升级与运维
本页面向负责运维服务端和守护进程的管理员。
在线安装的升级
重跑安装命令:
curl -fsSL https://code.ezboti.com/install.sh | sh脚本会重新生成 compose 模板、拉取 latest 镜像,并复用已有的 .env 与数据卷。升级前先备份;数据库 migration 是单向的。
回滚时在 .env 改 BEECODEAI_SERVER_TAG=<旧 buildId>,再重跑。
离线包升级
把新离线包放到服务器上,按部署代号重跑。数据库和附件卷不动:
sudo ./deploy.sh --deployment <代号>服务端启动时自动执行数据库迁移。升级前请备份数据库。
离线包回滚服务端
旧镜像还在本机时,把 docker-compose.yaml 里 server 的镜像改回旧 buildId,再重建:
sudo docker compose -f <data-dir>/docker-compose.yaml up -d回滚服务端不回滚数据库迁移。需要数据回退时按备份恢复。
升级守护进程
在网页端电脑详情页点「升级」。可以选择版本,支持降级和修复,所有已登录用户都能操作。
升级由本机的 host 自动完成:下载、校验、替换、重启、健康检查。失败会自动回滚,界面显示「升级失败,请重试」。
查看状态与日志
beecodeai daemon statusbeecodeai daemon logs -n 200Linux 还可以用 systemctl status beecodeai-daemon-<代号> 查看服务。
排障
- 端口被占用:改用其他
--port。 - 磁盘不足:清理数据目录或数据卷。
- 服务端不健康:用
docker ps看beecodeai-server-<deployment>,用docker logs看原因。 - 守护进程升级失败:看
beecodeai daemon logs,确认新包已放进服务端的制品目录,然后重试。
重负载任务
跑虚拟机、Docker、大规模编译这类会突破会话资源限额的工作时,用重负载任务把它们放进独立 cgroup,不吃会话限额、也不会触发会话熔断。
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 反向代理,不要在明文链路上传输凭据。