CI 使用者与希望在远程 Mac 上跑 OpenClaw 的开发者,常需一套可复现的部署流程。本文给出从 Docker 前置条件(Mac 环境、内存/磁盘)、克隆与 docker-setup、.env 与 openclaw.json 配置、启动与验证,到与 CI(GitHub Actions/脚本) 集成的完整步骤;文末附常见报错与排查,并引导至站内博客与购买页,助你稳定运行 OpenClaw。🐳🚀
前置条件与环境
在远程 Mac 上以 Docker 跑 OpenClaw 前,需满足以下条件。
| 项目 | 建议 |
|---|---|
| 系统 | macOS 12+(Apple Silicon 或 Intel),已安装 Docker Desktop 或 Colima 等 |
| 内存 | ≥ 8GB,推荐 16GB 以上以跑模型与多容器 |
| 磁盘 | ≥ 20GB 可用(镜像 + 模型缓存与数据卷) |
| 网络 | 能访问镜像仓库与模型/网关所需的外网(必要时配置代理) |
Docker 部署步骤
按顺序执行:克隆仓库 → 运行 docker-setup → 配置环境与 openclaw → 启动并验证。
可执行步骤
- 步骤 1:克隆 OpenClaw 仓库并进入目录。git clone https://github.com/openclaw/openclaw.git && cd openclaw
- 步骤 2:执行官方 docker-setup 脚本(若有
docker-setup.sh或文档中的一键命令),拉取镜像并初始化所需卷。 - 步骤 3:复制
.env.example为.env,按需填写 API 密钥、网关地址、模型端点等;编辑openclaw.json(或项目指定配置)设置模型 ID、超参等。 - 步骤 4:
docker compose up -d(或docker-compose up -d)启动服务。 - 步骤 5:验证:
openclaw status或访问文档中的健康检查 URL,确认服务就绪。
网关与模型配置
在 .env 中配置网关 base URL 与 API key;在 openclaw.json 中指定默认模型、temperature、max_tokens 等,与官方文档保持一致。若使用 Kilo 等统一网关,将网关地址与路由规则填好后,容器内 OpenClaw 即可通过该网关调用模型,便于控制成本与限流。
CI 中调用 OpenClaw
在 GitHub Actions 或自建 CI 中调用远程 Mac 上的 OpenClaw:
- 方式一:在 job 里 SSH 到远程 Mac,执行
openclaw run …或调用其 HTTP API(若暴露)。将 SSH 私钥存为 Actions Secret,用run: ssh user@host 'openclaw ...'即可。 - 方式二:在远程 Mac 上跑脚本,脚本内拉代码、执行
docker compose up -d后调用 OpenClaw CLI/API;CI 仅触发该脚本(如通过 webhook 或 cron)。
保证 CI 运行用户有权限访问 Docker 与 OpenClaw 配置目录,且环境变量(如 .env)在自动化上下文中可用。
常见报错与排查
| 现象 | 处理方向 |
|---|---|
| 容器起不来 / 退出码非 0 | 查 docker compose logs;确认内存与磁盘足够、端口未占用、.env 与 openclaw.json 路径正确。 |
| 模型/网关连接超时 | 检查网络与代理、网关 base URL 与 API key;在 Mac 上先 curl 测网关可达性。 |
| CI 中 SSH 失败 | 确认密钥与 known_hosts、防火墙允许 CI IP;用 openclaw doctor 做环境自检。 |
可引用信息
- OpenClaw 官方仓库与文档:以仓库内 README 与 docker 目录说明为准。
- 远程 Mac 推荐:至少 8GB 内存、20GB 磁盘,并预留模型与 Docker 镜像空间。
- CI 密钥:API key 与 SSH 私钥务必用 Secrets 管理,不要写进仓库。