OpenClaw Docker 部署:调用公有云模型

适用于已安装 Docker 的服务器,通过容器运行 OpenClaw,并调用公有云模型 API(如 OpenAI、DeepSeek、Azure OpenAI 等,需 OpenAI 兼容接口)。


一、前提条件

  • 已安装 Docker,可执行 docker run hello-world 通过。
  • 已拥有公有云模型的 API Key(如 OpenAI 的 sk-xxxx)。
  • 宿主机可访问公网(或已配置代理),以便容器内请求云 API。

二、准备配置目录

在宿主机执行:

mkdir -p ~/.openclaw

三、编写配置文件

创建并编辑 ~/.openclaw/openclaw.json

nano ~/.openclaw/openclaw.json

3.1 使用 OpenAI 官方

{
  "models": {
    "providers": {
      "openai": {
        "baseUrl": "https://api.openai.com/v1",
        "apiKey": "sk-你的真实OpenAI密钥",
        "api": "openai-completions",
        "models": [
          {
            "id": "gpt-4o-mini",
            "name": "GPT-4o mini",
            "contextWindow": 128000,
            "maxTokens": 4096
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "openai/gpt-4o-mini"
      },
      "workspace": "/home/node/.openclaw/workspace"
    }
  },
  "gateway": {
    "bind": "lan",
    "mode": "local",
    "port": 18789,
    "auth": {
      "mode": "token",
      "token": "请替换为自定义的一串长 token"
    },
    "controlUi": {
      "allowInsecureAuth": true,
      "dangerouslyDisableDeviceAuth": true
    }
  }
}

3.2 使用其他公有云(OpenAI 兼容)

DeepSeek 为例,仅改 baseUrlapiKeyidprimary

{
  "models": {
    "providers": {
      "deepseek": {
        "baseUrl": "https://api.deepseek.com/v1",
        "apiKey": "你的DeepSeek密钥",
        "api": "openai-completions",
        "models": [
          {
            "id": "deepseek-chat",
            "name": "DeepSeek Chat",
            "contextWindow": 64000,
            "maxTokens": 4096
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "deepseek/deepseek-chat"
      },
      "workspace": "/home/node/.openclaw/workspace"
    }
  },
  "gateway": {
    "bind": "lan",
    "mode": "local",
    "port": 18789,
    "auth": {
      "mode": "token",
      "token": "请替换为自定义的一串长 token"
    },
    "controlUi": {
      "allowInsecureAuth": true,
      "dangerouslyDisableDeviceAuth": true
    }
  }
}

配置说明:

说明
baseUrl 云厂商 API 地址,如 OpenAI https://api.openai.com/v1
apiKey 该厂商的 API Key,勿泄露
id / primary 厂商文档中的模型 ID,如 gpt-4o-minideepseek-chat
token 控制台登录 token,请改成自己的随机长串

四、拉取镜像并启动容器

docker pull ghcr.io/openclaw/openclaw:latest

docker run -d \
  --name openclaw \
  --restart unless-stopped \
  -p 18789:18789 \
  -v ~/.openclaw:/home/node/.openclaw \
  ghcr.io/openclaw/openclaw:latest

若宿主机需走代理访问公网,可增加环境变量(按实际代理修改):

docker run -d \
  --name openclaw \
  --restart unless-stopped \
  -p 18789:18789 \
  -e http_proxy=http://10.2.9.163:7890 \
  -e https_proxy=http://10.2.9.163:7890 \
  -v ~/.openclaw:/home/node/.openclaw \
  ghcr.io/openclaw/openclaw:latest

五、权限问题(EACCES)

若日志出现 EACCES: permission denied,在宿主机执行:

sudo chown -R 1000:1000 ~/.openclaw
sudo chmod -R 755 ~/.openclaw
docker restart openclaw

六、访问与验证

  1. 查看日志:docker logs -f openclaw
  2. 浏览器访问:http://<宿主机IP>:18789
  3. 输入配置中的 gateway.auth.token,在控制台发消息,请求会通过公网调用云模型。

七、常用命令

docker logs -f openclaw    # 查看日志
docker restart openclaw    # 改配置后重启
docker stop openclaw       # 停止
docker rm -f openclaw      # 删除容器(配置仍在 ~/.openclaw)

镜像:ghcr.io/openclaw/openclaw:latest

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐