跳转到内容
官网

升级与运维

本页面向负责运维服务端和守护进程的管理员。

在线安装的升级

重跑安装命令:

Terminal window
curl -fsSL https://code.ezboti.com/install.sh | sh

脚本会重新生成 compose 模板、拉取 latest 镜像,并复用已有的 .env 与数据卷。升级前先备份;数据库 migration 是单向的。

回滚时在 .env 改 BEECODEAI_SERVER_TAG=<旧 buildId>,再重跑。

离线包升级

把新离线包放到服务器上,按部署代号重跑。数据库和附件卷不动:

Terminal window
sudo ./deploy.sh --deployment <代号>

服务端启动时自动执行数据库迁移。升级前请备份数据库。

离线包回滚服务端

旧镜像还在本机时,把 docker-compose.yaml 里 server 的镜像改回旧 buildId,再重建:

Terminal window
sudo docker compose -f <data-dir>/docker-compose.yaml up -d

回滚服务端不回滚数据库迁移。需要数据回退时按备份恢复。

升级守护进程

在网页端电脑详情页点「升级」。可以选择版本,支持降级和修复,所有已登录用户都能操作。

升级由本机的 host 自动完成:下载、校验、替换、重启、健康检查。失败会自动回滚,界面显示「升级失败,请重试」。

查看状态与日志

Terminal window
beecodeai daemon status
beecodeai daemon logs -n 200

Linux 还可以用 systemctl status beecodeai-daemon-<代号> 查看服务。

排障

  • 端口被占用:改用其他 --port。
  • 磁盘不足:清理数据目录或数据卷。
  • 服务端不健康:用 docker ps 看 beecodeai-server-<deployment>,用 docker logs 看原因。
  • 守护进程升级失败:看 beecodeai daemon logs,确认新包已放进服务端的制品目录,然后重试。

重负载任务

跑虚拟机、Docker、大规模编译这类会突破会话资源限额的工作时,用重负载任务把它们放进独立 cgroup,不吃会话限额、也不会触发会话熔断。

Terminal window
beecodeai heavy <slug> -- <cmd> # 启动
beecodeai heavy ls # 查看
beecodeai heavy stop <slug> # 停止

同名任务会被拒绝;重负载跨会话存活,守护进程重启会清理。资源页能看到它的 CPU / 内存 / IO / 进程与运行状态。

已关闭任务的清理

守护进程会周期回收已关闭任务的本机文件,延迟默认 3 天。可用服务端环境变量 BEECODEAI_SERVER_TASK_TTL 调整,设为 0 表示不清理。

安全边界

  • /dl、/install.sh、/install.ps1 是公开只读的制品下载入口,不做鉴权。
  • deploy.env、external.env 含数据库与搜索服务密钥,权限 0600,不得外传。
  • 生产环境建议用 TLS 反向代理,不要在明文链路上传输凭据。