#!/bin/bash # Nginx 反向代理部署脚本 echo "🚀 开始部署 AIGC 平台..." # 检查 Docker if ! command -v docker &> /dev/null; then echo "❌ Docker 未安装,请先安装 Docker" exit 1 fi if ! command -v docker-compose &> /dev/null; then echo "❌ Docker Compose 未安装,请先安装 Docker Compose" exit 1 fi # 构建前端 echo "📦 构建前端..." cd frontend if ! npm install; then echo "❌ 前端依赖安装失败" exit 1 fi if ! npm run build; then echo "❌ 前端构建失败" exit 1 fi cd .. # 检查前端构建产物 if [ ! -d "frontend/dist" ]; then echo "❌ 前端构建产物不存在,请检查构建过程" exit 1 fi echo "✅ 前端构建完成" # 停止现有容器 echo "🛑 停止现有容器..." docker-compose down # 构建并启动服务 echo "🔨 构建并启动服务..." docker-compose up -d --build # 等待服务启动 echo "⏳ 等待服务启动..." sleep 10 # 检查服务状态 echo "📊 检查服务状态..." docker-compose ps # 测试健康检查 echo "🏥 测试健康检查..." if curl -f http://localhost/health > /dev/null 2>&1; then echo "✅ Nginx 健康检查通过" else echo "⚠️ Nginx 健康检查失败" fi echo "" echo "✅ 部署完成!" echo "🌐 前端地址: http://localhost" echo "🔗 API 地址: http://localhost/api" echo "" echo "查看日志: docker-compose logs -f" echo "停止服务: docker-compose down"