本地部署openclaw

2026-05-06阅读 0热度 0
人工智能 OpenClaw

背景

手头有两台机器,情况有点特殊:一台能访问特定的内部网络(我们暂且叫它Y网),另一台则只能连接普通的互联网。要在只能上网的机器上搭建一个AI开发环境,中间的“搬运”工作就得靠那台能连Y网的机器来完成了。

步骤

整个流程,说白了就是在有网络的“母机”上准备一个完整的环境包,然后“迁移”到目标机器上。下面是详细的步骤记录。

首先,在能连Y网的机器上操作:

# 在能连Y网的机器上执行
wsl --install --no-distribution
# 然后重启电脑
wsl --install -d Ubuntu-22.04 --web-download
wsl --export Ubuntu-22.04 E:\wsl_backup\Ubuntu2204.tar
wsl --unregister Ubuntu-22.04
Get-ItemProperty "HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss\*" | Select-Object DistributionName,BasePath
wsl -l -v
wsl -d Ubuntu-22.04
# 明确只有root权限才有最高权限
wsl
vi /etc/wsl.conf
[user]
default=root
exit
wsl
# 启用网关
sudo tee /etc/wsl.conf >/dev/null <<'EOF'
[boot]
systemd=true
EOF
exit
wsl
# 开始下载相关依赖发现下不来
unset http_proxy
unset https_proxy
unset all_proxy
unset NO_PROXY
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 114.114.114.114" | sudo tee -a /etc/resolv.conf
curl baidu.com
发现可以了
sudo tee /etc/wsl.conf <

接下来,把打包好的环境“搬”到另一台只能连互联网的机器上:

# 在另外一台机器上进行如下操作
# 1. 创建一个存放目录(比如 D:\wsl\openclaw)
mkdir D:\wsl\openclaw
# 2. 导入(把 tar 包变成可用的 WSL)
# 格式:wsl --import <自定义名> <存放目录>  --version 2
wsl --import Ubuntu-OpenClaw D:\wsl\openclaw D:\openclaw_full.tar --version 2
# 直接启动
wsl -d Ubuntu-OpenClaw

当然,目标机器得先确保WSL基础功能是开启的:

# 在另外一台机器上操作
# 启用 WSL 功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
# 启用虚拟机平台功能(WSL2 必需)
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
wsl -l
wsl --install --no-distribution
# 显示操作成功
mkdir D:\wsl\openclaw
wsl --import Ubuntu-OpenClaw D:\wsl\openclaw E:\openclaw_full.tar --version 2
# 这样就启动了openclaw
wsl -d Ubuntu-OpenClaw
openclaw -V 查看版本

环境启动后,剩下的就是配置工作了。这需要找到并修改OpenClaw的配置文件。

# 然后就是修改配置文件连接大模型了
# 后边还没做,稍等~下周再做

通常,你需要找到名为 openclaw.json 的配置文件,它的结构大致如下:

{
  "meta": {
    "lastTouchedVersion": "2026.3.13",
    "lastTouchedAt": "2026-03-23T07:41:19.897Z"
  },
  "wizard": {
    "lastRunAt": "2026-03-18T07:13:20.426Z",
    "lastRunVersion": "2026.3.13",
    "lastRunCommand": "onboard",
    "lastRunMode": "local"
  },
  "models": {
    "providers": {
      "ollama": {
        "baseUrl": "http://localhost:11434",
        "apiKey": "ollama-local",
        "api": "openai-completions",
        "models": [{
          "id": "qwen:latest",
          "name": "Qwen (本地)",
          "contextWindow": 32768
        }]
      }
    }
  },
  "tools": {
    "profile": "coding"
  },
  "commands": {
    "native": "auto",
    "nativeSkills": "auto",
    "restart": true,
    "ownerDisplay": "raw"
  },
  "session": {
    "dmScope": "per-channel-peer"
  },
  "gateway": {
    "port": 18789,
    "mode": "local",
    "bind": "loopback",
    "auth": {
      "mode": "token",
      "token": "ce8e2560583db62da6c77e0583167207ac95e8ac1b6cf7d1a"
    },
    "tailscale": {
      "mode": "off",
      "resetOnExit": false
    },
    "nodes": {
      "denyCommands": [
        "camera.snap",
        "camera.clip",
        "screen.record",
        "contacts.add",
        "calendar.add",
        "reminders.add",
        "sms.send"
      ]
    }
  }
}

总结

总体而言,这套通过WSL导出导入来迁移完整AI开发环境的方案,流程比较清晰,操作下来也还算顺利。关键在于先在源机器上配置好所有网络和依赖,打包成一个完整的“镜像”,再到目标机器上“还原”。剩下的模型连接和具体配置,就是按部就班的精细活了。

免责声明

本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。

相关阅读

更多
欢迎回来 登录或注册后,可保存提示词和历史记录
登录后可同步收藏、历史记录和常用模板
注册即表示同意服务条款与隐私政策