核心用法
本 Skill 提供完整的 macOS 下 Docker 化 OpenClaw 部署流程,从零开始搭建可隔离、可持久化的 AI 助手实例。主要流程包括:
1. 实例规划:通过 Python 脚本自动检测现有实例,分配唯一名称与端口(默认从 19002 起)
2. 容器启动:拉取 GHCR 官方镜像,配置 2GB 内存限制与 Node.js 堆内存参数,避免 OOM 崩溃
3. 网关配置:将绑定地址从 loopback 切换为 LAN 模式,并设置允许的访问来源
4. 身份验证:支持 Claude Max/Pro 订阅用户的 setup token 或原始 Anthropic API key
5. 浏览器配对:获取 gateway token 后通过本地浏览器完成设备配对
6. Discord 集成:创建 bot、配置 guild allowlist,实现多用户安全访问
7. 可选扩展:Gmail(通过 Himalaya)与 Google Drive(通过 gog)的 OAuth 集成
显著优点
- 完全隔离:每个实例拥有独立的数据卷与端口,支持同一机器运行多实例(如个人/工作/演示分离)
- 生产级配置:内置安全加固(
--cap-drop=ALL、no-new-privileges)、自动重启策略、资源限制 - 详尽排错:文档包含 10+ 常见陷阱的预判与解决方案(OOM、端口冲突、OAuth 回调问题等)
- 远程友好:完成初始设置后,可通过 SSH 端口转发远程管理,日常交互通过 Discord 等渠道无需直连 Mac
- 数据持久化:命名卷确保容器重建后配置、认证与工作区数据不丢失
潜在缺点与局限性
- macOS 独占:明确限制 Darwin 系统,Linux/Windows 用户无法直接使用
- 初始设置需物理/SSH 访问:浏览器配对、Claude token 生成、Google OAuth 等步骤必须能在 Mac 上打开浏览器
- 内存门槛较高:官方要求 2GB 容器内存 + 1GB Node 堆,低配 Mac 可能吃力
- Discord 配置复杂:涉及多个 Discord 开发者后台操作,权限设置繁琐,易因 scope 遗漏导致 slash command 失效
- 无全局 CLI:容器内必须通过
node /app/openclaw.mjs调用命令,交互式操作需记忆-it参数
适合人群
- 已订阅 Claude Max/Pro 且希望在本地隔离环境中运行 OpenClaw 的 macOS 用户
- 需要为不同场景(工作/个人/演示)维护多个独立 AI 助手实例的高级用户
- 熟悉 Docker 命令行、愿意处理 OAuth 与 Discord bot 配置的技术用户
- 对数据隐私敏感,希望将对话数据保留在本地 Docker 卷中的用户
常规风险
- token 泄露:setup token 或 API key 若不慎写入 shell history 或被日志捕获,可能导致 Anthropic 账户被盗用
- 端口暴露:虽然默认绑定 127.0.0.1,但错误的
allowedOrigins配置或 LAN 模式误用可能将 dashboard 暴露给局域网 - 数据丢失风险:
docker volume rm操作不可逆,未备份前删除实例将永久丢失工作区数据 - Discord 权限过宽:bot 权限设置不当可能导致未授权用户访问 AI 助手功能
- 自动更新风险:
latest标签可能引入破坏性变更,生产环境建议锁定具体版本号