Files
2026-07-13 12:36:27 +08:00

35 lines
617 B
Bash

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
echo "[1/3] 启动 FastAPI: http://127.0.0.1:8000"
(
cd "$ROOT_DIR"
python -m uvicorn backend.api.main:app --host 127.0.0.1 --port 8000 --reload
) &
API_PID=$!
echo "[2/3] 启动 Next.js: http://127.0.0.1:3000"
(
cd "$ROOT_DIR/frontend"
npm run dev
) &
WEB_PID=$!
echo "[3/3] 保留 Streamlit: http://127.0.0.1:8501"
(
cd "$ROOT_DIR"
streamlit run app.py
) &
ST_PID=$!
cleanup() {
echo "Shutting down..."
kill "$API_PID" "$WEB_PID" "$ST_PID" 2>/dev/null || true
}
trap cleanup EXIT INT TERM
wait