核心用法
本技能提供将 Moltbot(Clawdbot)AI 网关部署至 Fly.io 云平台的完整指南。部署流程分为五个阶段:
1. 环境准备:克隆仓库、配置 .env 文件(需 Anthropic API Key 和网关令牌)
2. Fly.io 配置:创建 fly.toml 定义应用规格(共享 2x CPU/2GB 内存)、持久化卷挂载
3. 应用部署:设置机密环境变量后执行 fly deploy
4. 代理信任配置:关键步骤 —— 通过 SSH 修改 /data/moltbot.json,将 Fly 内部网络段(172.16.0.0/12、10.0.0.0/8)加入 trustedProxies,否则所有连接因"不可信代理地址"被拒绝
5. 设备配对:访问 Web UI 触发配对请求,通过 CLI 脚本批准设备写入 paired.json
技术要点:必须使用 --bind lan 而非 0.0.0.0,网关监听 WebSocket 端口 3000。
显著优点
- 生产级部署:Fly.io 提供边缘网络、自动 HTTPS、持久化存储,适合个人或小团队生产环境
- 安全设计:强制网关令牌认证、设备级配对授权、代理来源验证
- 资源友好:共享 CPU-2x / 2GB 内存配置即可运行
- 完整工作流:从源码到可访问 Web UI 的全链路覆盖
潜在局限
- 手动配置繁琐:trustedProxies 需 SSH 进入容器执行 Node.js 脚本修改 JSON,无原生 CLI 支持
- 冷启动延迟:Fly 免费/低配机器存在约 60 秒启动等待
- 单点故障:单副本部署,无高可用说明
- 调试门槛:需同时熟悉 Fly CLI、Docker、Node.js 和 Moltbot 配置格式
适合人群
- 已有 Fly.io 账户、熟悉容器部署的开发者
- 需要将 Claude/ChatGPT 网关托管至云端、替代本地运行的用户
- 能接受命令行配置、具备基础网络知识(CIDR、代理头)的技术用户
常规风险
| 风险类型 | 说明 |
|---------|------|
| **配置泄漏** | `.env` 或 `fly.toml` 误提交至 Git 可能暴露 API Key,建议用 `fly secrets` 管理 |
| **代理绕过** | trustedProxies 配置不当可能导致 IP 伪造攻击,需严格限定 Fly 内网段 |
| **令牌丢失** | `CLAWDBOT_GATEWAY_TOKEN` 未备份将导致无法恢复访问,需安全保存 |
| **持久化失败** | 卷未正确挂载时数据丢失,部署前需确认 `fly volumes create` 成功 |
| **未授权访问** | 设备配对步骤若被跳过,Web UI 无法使用;但网关仍暴露于公网 |