Files
novalon-manage-system/start-test-env.sh
T

82 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
set -e
echo "🚀 启动Novalon管理系统测试环境..."
# 检查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 "🧹 清理旧的容器..."
docker-compose down -v 2>/dev/null || true
# 构建并启动服务
echo "🏗️ 构建并启动服务..."
docker-compose up -d --build
# 等待服务启动
echo "⏳ 等待服务启动..."
sleep 10
# 检查服务状态
echo "📊 检查服务状态..."
docker-compose ps
# 健康检查
echo "🏥 执行健康检查..."
# 检查PostgreSQL
echo "检查PostgreSQL..."
for i in {1..30}; do
if docker-compose exec -T postgres pg_isready -U novalon -d manage_system &> /dev/null; then
echo "✅ PostgreSQL已就绪"
break
fi
echo "等待PostgreSQL启动... ($i/30)"
sleep 2
done
# 检查后端服务
echo "检查后端服务..."
for i in {1..30}; do
if curl -f http://localhost:8084/actuator/health &> /dev/null; then
echo "✅ 后端服务已就绪"
break
fi
echo "等待后端服务启动... ($i/30)"
sleep 2
done
# 检查前端服务
echo "检查前端服务..."
for i in {1..30}; do
if curl -f http://localhost:3001 &> /dev/null; then
echo "✅ 前端服务已就绪"
break
fi
echo "等待前端服务启动... ($i/30)"
sleep 2
done
echo ""
echo "🎉 测试环境启动完成!"
echo ""
echo "📋 服务访问地址:"
echo " - 前端: http://localhost:3001"
echo " - 后端: http://localhost:8084"
echo " - 数据库: localhost:55432"
echo ""
echo "📝 查看日志:"
echo " docker-compose logs -f"
echo ""
echo "🛑 停止环境:"
echo " docker-compose down"