Docker 部署
完整 Docker 部署指南待写
本页原本基于 demos/codex-telegram-squad/ 目录的 Dockerfile + docker-compose 写成,但该 demo 已在 #198 docs 重写中移除,老路径已 stale。完整 Docker 部署指南(hub + dashboard + 多 agent 一键 compose)排进 v0.11+ doc rework。
在那之前,下面是「跑得通」的最小路径。
推荐路径:npm + tmux(最稳)
绝大多数自部署用户实际跑的是 npm 全局装 + tmux + anet project up 组合 —— 比 docker compose 更轻、debug 更直、迭代更快。详见:
- 一键安装(多 Agent + tmux) —
setup-anet.sh在一台空 Ubuntu/Debian 上一行命令起 hub + dashboard + 多个 agent - npm 部署指南 — 手动版本的 step-by-step
- 生产部署 / 公网部署安全 — TLS / 防火墙 / 备份 / 公网风险点
@sleep2agi/agent-network 的所有 CLI 命令(anet hub start / anet hub dashboard / anet node create/start / anet project up/restart/down)在裸 Docker 容器里和裸 host 上行为一致 —— 把容器当成「带 Node.js + Bun 的 Ubuntu」即可。
想自己写 Dockerfile?
仓库里有几份测试用 Dockerfile 可以当起点抄:
tests/Dockerfile— Node.js + Bun 基础镜像 + 装 anet 的最小集tests/qa-hub-13-server-health-agents/Dockerfile— hub + 多 agent 的可跑参考
这些是 release-gate 测试用,不是为生产部署优化(没做 multi-stage / 没固定 hash / 没做 non-root 用户)。生产上请自行加 hardening。
启动顺序建议
不管 docker compose 还是裸 tmux,一台机器上的启动顺序固定:
anet hub start --host 0.0.0.0(绑 LAN;本机用 default127.0.0.1也行)anet hub dashboardanet login --username admin --password <你的密码>(首次 hub start 会自动 bootstrapadmin/anethub,公网部署前立刻anet passwd改强密码)anet node create <alias>× N(每个 agent 一份配置)anet project up把 cwd 下所有节点起起来
容器化版本基本是把第 1-5 步分到不同 service / container。
常见坑
bunx拉commhub-server慢:第一次anet hub start会从 npm registry 拉一个 PINNED 版本commhub-server—— 容器内首次启动可能比 host 慢 30-60s(cache 在$HOME/.bun/install/cache)。固定基础镜像 + 预热 cache 可显著提速- Dashboard 容器要能反向调 Hub:Dashboard 走 REST + SSE 调 hub
:9200—— 容器间通信要在同一 docker network,或者把 hub 端口 publish 到 host - 节点 cwd 持久化:
anet node start把状态写到 cwd 下.anet/nodes/<alias>/,容器重启要保留这份就得把 cwd 挂出来当 volume - agent 进程不要 PID 1:用
tini之类的 init 包一层,否则 SIGTERM 直接送到 agent 进程会跳过 CommHub 的 offline 通知
下一步
- npm 部署指南 — 不走 Docker 的标准 step-by-step
- 生产部署 / 公网部署安全 — TLS / 防火墙 / 备份 / 安全注意
- 一键安装 — 最快路径