使用 Docker 部署 OpenClaw:编译、迁移与 Token 配置

本文记录了从源码到 Docker 容器化部署 OpenClaw 的完整流程,包括编译打包、迁移到其他机器以及访问配置。

1. 克隆源码

首先,从官方仓库克隆 OpenClaw 源码:

bash 复制代码
git clone https://github.com/openclaw/openclaw.gitcd openclaw

2. 编译与打包(执行 docker-setup.sh 脚本)

在源码目录下,执行 docker-setup.sh 脚本完成编译和打包:

arduino 复制代码
./docker-setup.sh

执行后会完成以下操作:

  • 安装依赖(npm / pnpm)
  • 将 TypeScript 源码编译为 JavaScript,并生成 dist/ 目录
  • 构建 Docker 镜像,包含已经编译好的 OpenClaw

可以通过以下命令检查是否成功:

perl 复制代码
docker images | grep openclaw

或者在容器内运行:

bash 复制代码
docker run --rm openclaw:local node dist/index.js --version

如果输出版本号,即表示编译完成。

3. 启动 Docker 容器

使用 docker-compose 启动 OpenClaw 网关和 CLI:

复制代码
docker-compose up -d

启动后,网关默认监听 18789 端口。

4. 配置 Token 并访问 Control UI

  1. 进入容器生成 Dashboard Token:

    docker-compose exec openclaw-cli openclaw dashboard --no-open

输出类似:

perl 复制代码
Dashboard URL: http://127.0.0.1:18789/#token=<your-token>
  1. 拷贝 URL 到浏览器,使用 Token 登录 Control UI。

  2. 若需要多设备访问,可在 openclaw.json 中配置:

    "gateway": { "controlUi": { "allowInsecureAuth": true }}

注意:此方式仅限使用 Token 登录,且存在安全风险,请仅在可信网络中使用。

5. 迁移到其他机器

迁移时,除了 Docker 镜像,还需要迁移 配置和环境文件

  1. 保存 Docker 镜像:

    docker save openclaw:local -o openclaw.tar

  2. 在目标机器加载镜像:

    docker load -i openclaw.tar

  3. 迁移配置文件和环境变量:

    拷贝 docker-compose.yml 和 .env 文件scp docker-compose.yml .env user@target:/home/user/openclaw/# 拷贝 OpenClaw 配置目录scp -r /root/.openclaw user@target:/root/

  4. 在目标机器启动容器:

    cd /home/user/openclawdocker-compose up -d

这样可以保证原有的 Token、Workspace 和插件配置完整迁移。

6. 注意事项

  1. HTTPS / 设备身份
    • 默认 Control UI 需要 设备身份 ,否则浏览器会报错 control ui requires device identity
    • 在公网访问或多设备访问时,推荐使用 HTTPS(可用自签名证书或 Tailscale Serve)保护 Token。
    • 若必须使用 HTTP,可在 openclaw.json 中添加: "gateway": {
      "controlUi": {
      "allowInsecureAuth": true
      }
      } 仅支持 Token 登录,安全性降低。
  2. 跨域访问
    • 默认 Control UI 允许 http://localhost127.0.0.1
    • 若从其他主机访问,确保 gateway.controlUi.allowedOrigins 包含你的浏览器访问地址。例如: "gateway": {
      "controlUi": {
      "allowedOrigins": "[http://172.244.44.35:18789"\\](https://link.juejin.cn?target=http%3A%2F%2F172.244.44.35%3A18789%2522%255C "http://172.244.44.35:18789%22%5C")
      }
      }
  3. 设备授权
    • 当多台设备访问时,可能需要 配对批准 : openclaw devices list
      openclaw devices approve
    • 配对失败或 Token 登录过多次失败,会出现 unauthorized: too many failed authentication attempts,需等待或重新生成 Token。
  4. Token 多设备使用
    • 默认同一个 Token 仅允许单设备登录。
    • 若需要多人访问,可考虑为每个用户生成独立 Token 或配置 allowInsecureAuth(存在安全风险)。
相关推荐
财经资讯数据_灵砚智能3 分钟前
基于全球经济类多源新闻的NLP情感分析与数据可视化(日间)2026年5月29日
大数据·人工智能·python·信息可视化·自然语言处理·ai编程·灵砚智能
财经资讯数据_灵砚智能6 分钟前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年5月28日
大数据·人工智能·python·信息可视化·自然语言处理·ai编程·灵砚智能
lulu121654407820 分钟前
Claude钩子系统架构设计:从执行时序到扩展机制
java·人工智能·python·ai编程
huangfuyk39 分钟前
前端使用Cursor编辑器方面遇到的问题及注意细节
前端·编辑器·ai编程·cursor
折哥的程序人生 · 物流技术专研1 小时前
Qoder 1.0 完全指南:从安装到Agents驱动开发实战
开发语言·人工智能·python·ai编程
canonical_entropy10 小时前
Harness Engineering 之外:从非线性动力系统控制理解吸引子引导工程
架构·aigc·ai编程
ServBay13 小时前
月之暗面 Kimi Code 0.4.0 发布,终端 AI 编码助手全面采用 TypeScript,实现毫秒级启动
后端·aigc·ai编程
心疼你的一切13 小时前
高效内容生产:如何实现规模化创作
大数据·人工智能·ai·ai编程·ai写作
kyriewen14 小时前
我关掉了Copilot:因为我写的代码出现在了别人的建议里
前端·javascript·ai编程
孟健14 小时前
flomo MCP 之后,笔记管理该重做了
ai编程