94dd60108c
- 删除 MinIO 依赖,改用阿里云 OSS (oss2) - 重写存储服务 storage.py(完全兼容原接口) - 更新配置:config.py 改为 OSS_* 配置项 - 重构 Docker Compose:分离基础设施(infra.yml)和应用(compose.yml) - 添加健康检查和自动重启配置 - 创建标准化部署脚本(init-server.sh + deploy.sh) - 统一 Nginx 配置(主域名 api.xiaoxiajianji.com) - 修复 Web Dockerfile 端口映射(80 not 3000) 服务器清理完成: - 删除旧云控制台、监控系统、桌面版代码 - 删除 2.6GB 旧安装包 - 清理 Docker 缓存 2.5GB - 磁盘使用率从 48% 降至 26%
44 lines
1018 B
Bash
44 lines
1018 B
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
cd /var/lib/xiaoxia-saas-staging/repo/infra/docker
|
|
|
|
echo "🚀 开始部署小虾 SaaS..."
|
|
|
|
# 1. 拉取最新代码(CI/CD 已完成)
|
|
# 2. 构建镜像(CI/CD 已完成)
|
|
|
|
# 3. 滚动更新应用服务
|
|
echo "🔄 更新应用服务..."
|
|
docker compose up -d --no-deps api worker web
|
|
|
|
# 4. 健康检查
|
|
echo "⏳ 等待服务启动..."
|
|
for i in {1..30}; do
|
|
if docker exec xiaoxia-api-staging wget -q --spider http://localhost:8000/api/v1/health 2>/dev/null; then
|
|
echo "✅ API 健康检查通过"
|
|
break
|
|
fi
|
|
if [ $i -eq 30 ]; then
|
|
echo "❌ 健康检查超时"
|
|
echo "📋 API 日志:"
|
|
docker logs xiaoxia-api-staging --tail 50
|
|
exit 1
|
|
fi
|
|
sleep 2
|
|
done
|
|
|
|
# 5. 清理旧镜像
|
|
echo "🧹 清理旧镜像..."
|
|
docker image prune -f
|
|
|
|
echo ""
|
|
echo "✅ 部署完成!"
|
|
echo ""
|
|
echo "📍 服务访问地址:"
|
|
echo " Web: https://api.xiaoxiajianji.com"
|
|
echo " API: https://api.xiaoxiajianji.com/api/v1/docs"
|
|
echo ""
|
|
echo "📊 容器状态:"
|
|
docker compose ps
|