83 lines
2.5 KiB
Bash
Executable File
83 lines
2.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 算法展示平台完整启动脚本
|
|
|
|
echo "启动算法展示平台服务..."
|
|
|
|
# 进入部署目录
|
|
cd "$(dirname "$0")/deploy"
|
|
|
|
# 停止现有服务
|
|
echo "停止现有服务..."
|
|
docker-compose -f custom-docker-compose.yml down || true
|
|
|
|
# 启动基础服务
|
|
echo "启动基础服务 (PostgreSQL, Redis, MinIO)..."
|
|
HTTP_PROXY="" http_proxy="" HTTPS_PROXY="" https_proxy="" \
|
|
docker-compose -f custom-docker-compose.yml up -d postgres redis minio
|
|
|
|
echo "等待基础服务启动..."
|
|
sleep 15
|
|
|
|
# 检查基础服务状态
|
|
echo "检查基础服务状态..."
|
|
docker-compose -f custom-docker-compose.yml ps
|
|
|
|
echo ""
|
|
echo "基础服务已启动!"
|
|
echo ""
|
|
|
|
# 启动后端服务(假设镜像已构建)
|
|
echo "启动后端服务..."
|
|
HTTP_PROXY="" http_proxy="" HTTPS_PROXY="" https_proxy="" \
|
|
docker-compose -f custom-docker-compose.yml up -d backend
|
|
|
|
echo "等待后端服务启动..."
|
|
sleep 20
|
|
|
|
# 检查后端服务状态
|
|
BACKEND_STATUS=$(docker-compose -f custom-docker-compose.yml ps backend --format json | jq -r '.State' 2>/dev/null || echo 'unknown')
|
|
|
|
if [ "$BACKEND_STATUS" = "running" ]; then
|
|
echo "后端服务已成功启动"
|
|
else
|
|
echo "后端服务启动出现问题,状态: $BACKEND_STATUS"
|
|
echo "尝试重新构建后端服务..."
|
|
HTTP_PROXY="" http_proxy="" HTTPS_PROXY="" https_proxy="" \
|
|
docker-compose -f custom-docker-compose.yml build backend
|
|
HTTP_PROXY="" http_proxy="" HTTPS_PROXY="" https_proxy="" \
|
|
docker-compose -f custom-docker-compose.yml up -d backend
|
|
fi
|
|
|
|
# 由于前端构建可能遇到网络问题,提供一个选项
|
|
echo ""
|
|
echo "是否尝试启动前端服务?(y/n)"
|
|
read -r frontend_choice
|
|
|
|
if [[ $frontend_choice =~ ^[Yy]$ ]]; then
|
|
echo "尝试启动前端服务..."
|
|
HTTP_PROXY="" http_proxy="" HTTPS_PROXY="" https_proxy="" \
|
|
docker-compose -f custom-docker-compose.yml up -d frontend
|
|
sleep 10
|
|
fi
|
|
|
|
echo ""
|
|
echo "等待所有服务启动..."
|
|
sleep 10
|
|
|
|
# 显示所有服务状态
|
|
echo "检查所有服务状态..."
|
|
docker-compose -f custom-docker-compose.yml ps
|
|
|
|
echo ""
|
|
echo "算法展示平台已启动!"
|
|
echo ""
|
|
echo "服务地址:"
|
|
echo "- 前端: http://localhost:3000"
|
|
echo "- 后端API: http://localhost:8001"
|
|
echo "- API文档: http://localhost:8001/docs"
|
|
echo "- MinIO控制台: http://localhost:9001 (admin/minioadmin)"
|
|
echo "- PostgreSQL: localhost:5433 (内部端口5432)"
|
|
echo "- Redis: localhost:6381 (内部端口6379)"
|
|
echo ""
|
|
echo "如需查看日志,请运行: docker-compose -f custom-docker-compose.yml logs -f" |