部署与运维
生产部署使用稳定 Release、Node.js 22+ 和 MySQL。安装时固定目标版本,并保留该版本的配置与升级记录,便于后续维护。
最小生产路径
Section titled “最小生产路径”cp .env.example .env# 设置 BAILING_ENV=production、随机 BAILING_TOKEN、MySQL 与模型配置npm cinpm run db:initnpm run admin:create -- adminnpm start也可以使用官网安装脚本部署当前稳定发行物:
curl -fsSL https://www.bailinghub.com/install.sh | sh| 项目 | 要求 |
|---|---|
| 环境变量 | 密钥来自环境变量或密钥管理器,不写入仓库 |
| 数据库 | 通过正式迁移器执行全部未应用 migration,不修改已应用文件 |
| 管理员 | bootstrap 只在管理员表为空时创建首个账号;上线后轮换初始密码 |
| 健康检查 | /health 检查服务状态,/version 核对应用与契约版本 |
| 审计保留 | BAILING_AUDIT_RETENTION_DAYS=0 表示不自动删除;按组织要求显式设置 |
| 限速 | MySQL 后端让接入方、聊天入口、登录和工具调用限速在多实例下保持一致 |
| 回调 | 失败会进入 trace/delivery 账本;业务侧保留按 job_id 查询兜底 |
| 排障 | 以单个 job_id 导出脱敏 trace,不复制整库或真实密钥 |
- 阅读目标版本 Release Notes 与兼容性说明;
- 备份数据库和当前部署配置;
- 运行未应用迁移并核对 migration 账本;
- 启动后验证
/health、/version、后台登录和一条无副作用任务; - 再恢复真实流量,观察队列、错误和工具调用。
从 v0.8.0 升级到 v0.9.0 时,通过 npm run db:init 应用尚未执行的迁移 063、064。更早版本还需补齐前序迁移;迁移器依据账本执行未应用文件,服务启动不会自动迁移。
完整配置与故障恢复见 v0.9.0 Operations 和兼容性与升级。