3.6 KiB
3.6 KiB
title, description, category, order
| title | description | category | order |
|---|---|---|---|
| 版本升级与回滚 | 平滑升级生产环境,数据库迁移方案,紧急回滚操作手册。 | deploy | 3 |
版本升级与回滚
平滑升级生产环境,数据库迁移方案,紧急回滚操作手册。
⚠️ 升级前必读
重要检查清单
- 备份数据库
- 查阅版本更新日志
- 在测试环境验证
- 确认回滚方案
- 通知相关人员
- 选择低峰期执行
版本兼容性
| 当前版本 | 可直接升级到 |
|---|---|
| 2.0.x | 2.1.x |
| 2.1.x | 2.2.x, 2.3.x |
| 2.2.x | 2.3.x |
| 1.x | 需要先升级到 2.0 |
🚀 升级步骤
准备工作
# 1. 进入部署目录
cd ~/websopy-deploy
# 2. 备份当前版本配置
cp docker-compose.yml docker-compose.yml.bak
cp .env .env.bak
# 3. 备份数据库(必须!)
docker-compose exec postgres pg_dump -U websopy > backups/db_backup_$(date +%Y%m%d).sql
# 4. 备份上传文件
tar -czf backups/uploads_$(date +%Y%m%d).tar.gz -C /data/websopy uploads/
执行升级
# 1. 停止服务
docker-compose down
# 2. 拉取新版本镜像
docker-compose pull
# 3. 更新代码(如果使用 git 部署)
git fetch origin
git checkout v2.3.0
# 4. 检查新版本配置变更
git diff v2.2.0 v2.3.0 -- .env.example
# 5. 合并配置变更
nano .env
# 6. 启动服务
docker-compose up -d
# 7. 执行数据库迁移
docker-compose run --rm api websopy migrate
验证升级
# 检查服务状态
docker-compose ps
# 检查 API 健康
curl http://localhost:3000/api/health
# 检查版本号
docker-compose exec api websopy --version
# 查看迁移日志
docker-compose logs api | grep -i migrate
🔧 数据库迁移
手动迁移
# 查看待执行迁移
docker-compose run --rm api websopy migrate:status
# 执行迁移
docker-compose run --rm api websopy migrate
# 回滚上一个迁移
docker-compose run --rm api websopy migrate:rollback
⤵️ 紧急回滚
自动回滚
# 如果启动失败,查看错误
docker-compose logs api
# 回滚到上一个版本
docker-compose down
git checkout v2.2.0
docker-compose pull
docker-compose up -d
恢复数据库
# 停止服务
docker-compose down
# 删除新数据库
docker-compose exec postgres dropdb -U websopy websopy
# 创建空数据库
docker-compose exec postgres createdb -U websopy websopy
# 恢复备份
docker exec -i $(docker-compose ps -q postgres) psql -U websopy < backups/db_backup_20240115.sql
# 启动服务
docker-compose up -d
📊 版本更新日志
v2.3.0(最新)
新增功能:
- 🚀 AI 流式输出优化,延迟降低 50%
- 📊 新增数据看板组件
- 🔔 支持自定义 Webhook 事件
Breaking Changes:
- ⚠️ API
/ai/chat端点参数变更 - ⚠️ 环境变量
AI_MODEL重命名为DEFAULT_MODEL
v2.2.0
新增功能:
- 💬 多语言支持
- 📱 移动端优化
- 🔐 SSO 单点登录
v2.1.0
新增功能:
- 🤖 AI Agent 功能
- 📚 RAG 知识库
- ⚡ 工作流自动化
🧪 测试环境验证
测试清单
- 首页访问正常
- 用户登录/注册
- 主要功能操作
- API 接口调用
- Webhook 接收
- 性能无明显下降
❓ 常见问题
Q: 迁移失败怎么办?
- 停止所有服务
- 恢复数据库备份
- 检查迁移脚本错误
- 联系技术支持
Q: 镜像拉取失败?
# 使用国内镜像源
nano /etc/docker/daemon.json
{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
}
sudo systemctl restart docker
docker-compose pull