topfans/backend/gateway/start.sh
2026-04-07 22:29:48 +08:00

62 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# Top-Fans Gateway 启动脚本
echo "🚀 启动 Top-Fans Gateway..."
echo ""
# 检查 UserService 是否在运行
if ! lsof -i:20000 > /dev/null 2>&1; then
echo "⚠️ 警告: UserService (端口 20000) 未运行"
echo "请先启动 UserService:"
echo " cd backend/services/userService && ./start.sh"
echo ""
fi
# 检查 SocialService 是否在运行
if ! lsof -i:20001 > /dev/null 2>&1; then
echo "⚠️ 警告: SocialService (端口 20001) 未运行"
echo "请先启动 SocialService:"
echo " cd backend/services/socialService && ./start.sh"
echo ""
fi
# 设置环境变量(可选)
export SERVER_PORT=${SERVER_PORT:-8080}
export GIN_MODE=${GIN_MODE:-debug}
export DUBBO_USER_SERVICE_URL=${DUBBO_USER_SERVICE_URL:-tri://127.0.0.1:20000}
export DUBBO_SOCIAL_SERVICE_URL=${DUBBO_SOCIAL_SERVICE_URL:-tri://127.0.0.1:20001}
echo "📋 配置信息:"
echo " - 端口: $SERVER_PORT"
echo " - 模式: $GIN_MODE"
echo " - UserService: $DUBBO_USER_SERVICE_URL"
echo " - SocialService: $DUBBO_SOCIAL_SERVICE_URL"
echo ""
# 检查端口是否被占用
if lsof -i:$SERVER_PORT > /dev/null 2>&1; then
echo "❌ 错误: 端口 $SERVER_PORT 已被占用"
echo "请修改 SERVER_PORT 环境变量或停止占用该端口的进程"
exit 1
fi
# 安装依赖(如果需要)
if [ ! -f "go.sum" ]; then
echo "📦 安装依赖..."
go mod tidy
if [ $? -ne 0 ]; then
echo "❌ 依赖安装失败"
echo ""
echo "可能的解决方案:"
echo " 1. 检查网络连接"
echo " 2. 配置 Go 代理: export GOPROXY=https://goproxy.io,direct"
echo " 3. 手动运行: go mod download"
exit 1
fi
fi
echo "✅ 启动 Gateway..."
go run main.go