| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- #!/bin/bash
- # PaperGraph(知脉) 一键启动:后端 + 前端
- set -e
- ROOT="$(cd "$(dirname "$0")" && pwd)"
- # shellcheck source=ports.env
- source "$ROOT/ports.env"
- cleanup() {
- echo ""
- echo "正在关闭服务..."
- kill $BACKEND_PID $FRONTEND_PID 2>/dev/null
- wait $BACKEND_PID $FRONTEND_PID 2>/dev/null
- echo "已关闭。"
- }
- trap cleanup EXIT INT TERM
- echo "============================================"
- echo " PaperGraph(知脉) 启动中..."
- echo "============================================"
- cd "$ROOT/backend"
- echo "→ 后端 http://localhost:${BACKEND_PORT}"
- export PORT="$BACKEND_PORT"
- PAPERGRAPH_UVICORN_RELOAD=0 python run.py &
- BACKEND_PID=$!
- cd "$ROOT/frontend"
- export VITE_BACKEND_PORT="$BACKEND_PORT" VITE_DEV_PORT="$FRONTEND_PORT"
- echo "→ 前端 http://127.0.0.1:${FRONTEND_PORT}"
- npm run dev &
- FRONTEND_PID=$!
- echo ""
- echo " 前端: http://127.0.0.1:${FRONTEND_PORT}"
- echo " 后端: http://127.0.0.1:${BACKEND_PORT}"
- echo " 健康: http://127.0.0.1:${BACKEND_PORT}/health"
- echo " Ctrl+C 停止"
- echo "============================================"
- wait
|