You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
2.3 KiB

#!/bin/bash
# ============================================
# A股智投分析平台 - 开发模式启动脚本
# 支持代码热重载,修改后自动同步
# ============================================
set -e
echo "=============================================="
echo "A股智投分析平台 - 开发模式启动"
echo "特点: 代码修改自动同步,无需重建镜像"
echo "=============================================="
# 检查 Docker
if ! command -v docker &> /dev/null; then
echo "❌ Docker 未安装"
exit 1
fi
if ! command -v docker-compose &> /dev/null; then
echo "❌ Docker Compose 未安装"
exit 1
fi
echo "✓ Docker 环境检查通过"
# 创建必要目录
mkdir -p logs
echo ""
echo "=============================================="
echo "启动开发环境..."
echo "=============================================="
# 使用开发配置启动
docker-compose -f docker-compose.dev.yml up -d
echo ""
echo "⏳ 等待服务启动..."
sleep 5
# 检查状态
echo ""
echo "=============================================="
echo "服务状态"
echo "=============================================="
docker-compose -f docker-compose.dev.yml ps
echo ""
echo "=============================================="
echo "✅ 开发环境已启动!"
echo "=============================================="
echo ""
echo "访问地址:"
echo " • API: http://localhost:3000/api/v1"
echo " • Health: http://localhost:3000/api/v1/health"
echo ""
echo "开发特性:"
echo " ✓ 代码修改自动同步(无需重启容器)"
echo " ✓ 支持热重载(自动重启服务)"
echo " ✓ 调试日志实时输出"
echo ""
echo "常用命令:"
echo " 查看日志: docker-compose -f docker-compose.dev.yml logs -f app"
echo " 停止服务: docker-compose -f docker-compose.dev.yml stop"
echo " 重启服务: docker-compose -f docker-compose.dev.yml restart app"
echo " 完全删除: docker-compose -f docker-compose.dev.yml down -v"
echo ""
echo "💡 提示:修改 src/ 目录下的代码会立即生效!"
echo "=============================================="
# 显示实时日志
echo ""
read -p "是否查看实时日志?(y/n): " show_logs
if [ "$show_logs" = "y" ]; then
docker-compose -f docker-compose.dev.yml logs -f app
fi