版本升级
升级前 / 升级中 / 升级后的标准流程。
升级前
升级方式
Docker / docker-compose
bash
docker compose pull one-api-pro
docker compose up -d只重启 one-api-pro 容器。数据卷(./data / ./mysql-data)不变。
源码部署
bash
git pull
cd web/default-pro && pnpm install && pnpm build && cd ../..
go build -o one-api-pro .
# 停旧进程,启动新进程
systemctl stop one-api-pro
systemctl start one-api-pro二进制部署
直接替换二进制文件,重启服务。数据文件不变。
升级过程中
容器启动时 AutoMigrate 会自动建表 / 加列。日志会显示迁移过程:
[migrate] adding column foo.bar
[migrate] creating index idx_xxx如果失败,看日志中的具体错误(通常是字段类型冲突)。
升级后
- 看一遍 CHANGELOG 里的「升级注意事项」
- 登录后台 → 运营仪表盘,对比升级前后的请求成功率
- 抽样几条调用日志,确认调用行为符合预期
- 新功能:有些版本需要在后台「系统设置」里手动配置(CHANGELOG 会指出)
回滚
若升级后出现严重问题:
bash
# Docker
docker compose down
# 把备份的 mysql-data / data 恢复回去
mv ./mysql-data ./mysql-data.broken
cp -r ./backup-YYYYMMDD/mysql-data ./
docker compose up -d升级过程中没有动过数据库 schema 的话,可以直接降级回滚。