43 lines
1.0 KiB
Bash
43 lines
1.0 KiB
Bash
#!/bin/bash
|
|
|
|
# 开发环境启动脚本
|
|
# 同时启动 FastAPI 和 Spectator Server
|
|
|
|
set -e
|
|
|
|
if [ -f .env ]; then
|
|
echo "加载 .env 文件中的环境变量..."
|
|
set -a
|
|
source .env
|
|
set +a
|
|
else
|
|
echo ".env 文件未找到,跳过加载环境变量。"
|
|
fi
|
|
|
|
echo "🚀 启动开发环境..."
|
|
|
|
# 启动 FastAPI 服务器
|
|
echo "启动 FastAPI 服务器..."
|
|
cd /workspaces/osu_lazer_api
|
|
uv run uvicorn main:app --host 0.0.0.0 --port 8000 --reload &
|
|
FASTAPI_PID=$!
|
|
|
|
# 启动 Spectator Server
|
|
echo "启动 Spectator Server..."
|
|
cd /workspaces/osu_lazer_api/spectator-server
|
|
dotnet run --project osu.Server.Spectator --urls "http://0.0.0.0:8086" &
|
|
SPECTATOR_PID=$!
|
|
|
|
echo "✅ 服务已启动:"
|
|
echo " - FastAPI: http://localhost:8000"
|
|
echo " - Spectator Server: http://localhost:8086"
|
|
echo " - Nginx (统一入口): http://localhost:8080"
|
|
echo ""
|
|
echo "按 Ctrl+C 停止所有服务"
|
|
|
|
# 等待用户中断
|
|
trap 'echo "🛑 正在停止服务..."; kill $FASTAPI_PID $SPECTATOR_PID; exit 0' INT
|
|
|
|
# 保持脚本运行
|
|
wait
|