Codeg自托管部署指南Docker多阶段构建、环境变量配置与服务器模式最佳实践【免费下载链接】codegCollaborative multi-agent AI coding workspace: aggregate sessions from Claude Code, Codex, OpenCode, Pi, Grok Build, etc. Desktop app, self-hosted server, or Docker.项目地址: https://gitcode.com/gh_mirrors/co/codeg 想用浏览器随时随地操作 AI 编程智能体Codeg 自托管部署是最佳选择。Codeg 是一个多智能体 AI 编程工作区聚合 Claude Code、Codex、OpenCode、Pi、Grok Build 等智能体会话于一处。本文带你用 Docker 一行命令完成 Codeg 服务器模式部署讲清多阶段构建原理、关键环境变量配置与生产环境最佳实践。为什么选择自托管 Codeg 服务器模式Codeg 有三种运行形态桌面应用、独立服务器codeg-server和 Docker 容器。对新手而言Docker 服务器模式是最省心的自托管方案浏览器即客户端任何设备打开http://服务器IP:3080即可开始会话、批准权限、查看项目移动端无缝接管原生 iOS / Android 客户端直接连接你的 Codeg 服务器填地址、填令牌即可配对数据留在自己手里文件、智能体 CLI 与对话都运行在 Codeg 所在机器上网络访问仅由用户主动触发令牌认证守护安全Web 模式与服务器模式均启用基于令牌token的身份认证。 如果你只是想本地体验桌面应用最简单想让团队共用、或在服务器上跑无人值守任务选自托管服务器模式。一图看懂 Codeg Docker 多阶段构建Codeg 的 Dockerfile 采用经典的三阶段构建兼顾了镜像体积与运行完整性阶段基础镜像做什么1️⃣ frontendnode:24-alpine用 pnpm 构建 Next.js 前端产出静态网页资源2️⃣ backendrust:slim-bookworm编译 Rust 服务端codeg-server及其 MCP 伴生进程codeg-mcp3️⃣ Runtimenode:24-bookworm-slim只拷贝两个二进制和静态页面装好 git、openssh、python3 等运行依赖这种分层设计的好处构建层与运行层分离最终镜像不含 Node 构建缓存和 Rust 编译产物体积更小、启动更快。几个值得注意的细节来自 Dockerfile 注释codeg-mcp是每个会话由运行时注入的 stdio MCP 伴生程序必须与codeg-server放在同一目录供运行时按“可执行文件同级查找”定位特意安装libicu72OfficeCLI 自带内嵌 .NET 运行时启动时依赖系统 ICU 库缺失会导致 Office 预览和文件技能同步报 “Couldnt find a valid ICU package” 错误容器默认以codeg-server --supervise作为 PID 1 运行内置监督进程就地升级时可替换二进制并重启工作进程无需停容器。一键部署docker compose 配置步骤仓库已内置 docker-compose.yml克隆仓库后在仓库目录执行docker compose up -d --build即可仓库地址git clone https://gitcode.com/gh_mirrors/co/codeg。compose 文件帮你预置了四件关键事端口映射主服务3080:3080外加3081-3090的端口桥接区间——智能体在容器里启动的开发服务器如http://localhost:3000会通过其中一个端口转发到宿主机方便在工作区内直接预览数据卷codeg-data:/data持久化数据库、上传文件等全部状态环境变量注入CODEG_TOKEN、CODEG_PORT、CODEG_HOST自动重启restart: unless-stopped保证服务器异常退出后自动拉起。环境变量配置清单服务器模式核心参数理解这几个环境变量就掌握了 Codeg 自托管部署 90% 的配置能力变量默认值作用CODEG_PORT3080服务监听端口见 codeg_server.rsCODEG_HOST0.0.0.0绑定地址服务器模式建议保持0.0.0.0CODEG_TOKEN自动生成并持久化访问令牌。强烈建议显式设置一个自己保管的值CODEG_DATA_DIR容器内/data数据目录数据库、上传、宠物等都在这一个根下CODEG_STATIC_DIR/app/web前端静态资源目录由镜像预置一般无需改CODEG_BRIDGE_PORTS3081-3090开发服务器端口桥接区间设为off可关闭关于令牌的贴心设计如果你不设置CODEG_TOKEN服务器启动时会自动生成一个并持久化重启不会轮换并只输出到终端 stderr——不会写入日志文件。你可以通过docker logs看到[SERVER] Token: ...这一行把它抄下来生产环境请通过 compose 的environment固定你自己的令牌。服务器模式最佳实践清单✅数据只挂一个卷所有持久化状态都收敛在CODEG_DATA_DIR容器内/data。不要同时再设CODEG_HOME指向不同目录否则数据库和上传文件会分裂在两个文件系统上备份将不完整——代码中甚至有专门的告警提示这一点。✅按需开放端口桥接不跑前端开发服务器就删掉3081-3090的端口映射。另一种更优雅的方式是设置CODEG_BRIDGE_HOST_PATTERNauto用主机名如3000.codeg.example.com而非端口区间转发需要配合通配符 DNS 记录与反向代理透传Host头。✅理解就地升级的边界在应用内Settings → Software Update完成的升级写入的是当前容器的可写层。容器被重建--force-recreate或docker pull后重启就会回到镜像版本。想让升级永久生效请构建或拉取新版本镜像后重建容器。✅挂载你的项目目录可选在 docker-compose.yml 的volumes中把宿主机项目目录挂进容器例如/path/to/projects:/projects智能体即可直接操作你的真实仓库。✅升级前备份codeg-data卷就是你的生命线。定期docker run --rm -v codeg-data:/data -v 宿主机备份目录:/backup alpine tar czf /backup/codeg-backup.tar.gz -C /data .换机迁移或大版本升级前先留底。常见问题速查Q浏览器打不开http://IP:3080先用docker ps确认容器在运行、docker logs看到[SERVER] Listening on字样再检查宿主机防火墙与云安全组是否放行了 3080 端口。Q提示 401 / 需要令牌浏览器输入令牌或检查 compose 中的CODEG_TOKEN是否与客户端填写的一致。注意空字符串等价于“未设置”会触发自动生成。Q想不用 Docker直接裸跑仓库提供了 install.sh 一键安装脚本macOS/Linux装完后设置CODEG_STATIC_DIR指向下载的网页资源再执行codeg-server即可环境变量体系与 Docker 模式完全一致。Q智能体连接被判定空闲断开默认 60 秒空闲扫描可用CODEG_ACP_IDLE_TIMEOUT_SECS调整设为0关闭。总结Codeg 自托管部署的路径非常清晰多阶段构建的 Docker 镜像保证了小体积与完整功能六个环境变量覆盖了端口、令牌、数据目录与端口桥接的全部配置面配合 compose 的数据卷持久化与自动重启你获得的是一个随时可用浏览器和手机接管的多智能体编程服务器。把令牌设好、卷挂上、防火墙放行五分钟之后你的 Claude Code 与 Codex 已经在服务器端并肩开工了。【免费下载链接】codegCollaborative multi-agent AI coding workspace: aggregate sessions from Claude Code, Codex, OpenCode, Pi, Grok Build, etc. Desktop app, self-hosted server, or Docker.项目地址: https://gitcode.com/gh_mirrors/co/codeg创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
