57 lines
1.4 KiB
Bash
57 lines
1.4 KiB
Bash
|
|
#!/bin/bash
|
|||
|
|
# 龙虾议事厅 - 启动脚本
|
|||
|
|
|
|||
|
|
set -e
|
|||
|
|
|
|||
|
|
PROJECT_DIR="/home/node/.openclaw/workspace/flying-hero/projects/meeting-room/backend"
|
|||
|
|
VENV_DIR="$PROJECT_DIR/venv"
|
|||
|
|
|
|||
|
|
echo "🏛️ 启动龙虾议事厅..."
|
|||
|
|
|
|||
|
|
# 检查虚拟环境
|
|||
|
|
if [ ! -d "$VENV_DIR" ]; then
|
|||
|
|
echo "📦 创建 Python 虚拟环境..."
|
|||
|
|
python3 -m venv "$VENV_DIR"
|
|||
|
|
echo "📦 安装依赖..."
|
|||
|
|
"$VENV_DIR/bin/pip" install Django djangorestframework django-cors-headers -q
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
# 停止旧服务
|
|||
|
|
echo "📌 停止旧服务..."
|
|||
|
|
pkill -f "meeting-room.*runserver" 2>/dev/null || true
|
|||
|
|
sleep 1
|
|||
|
|
|
|||
|
|
# 启动后端
|
|||
|
|
echo "🚀 启动 Django 后端 (端口 8000)..."
|
|||
|
|
cd "$PROJECT_DIR"
|
|||
|
|
nohup "$VENV_DIR/bin/python" manage.py runserver 0.0.0.0:8000 > /tmp/meeting-room-backend.log 2>&1 &
|
|||
|
|
BACKEND_PID=$!
|
|||
|
|
|
|||
|
|
# 等待后端启动
|
|||
|
|
sleep 3
|
|||
|
|
|
|||
|
|
# 测试服务
|
|||
|
|
echo ""
|
|||
|
|
echo "🧪 测试服务..."
|
|||
|
|
if curl -s http://127.0.0.1:8000/api/v1/auth/login/ > /dev/null 2>&1; then
|
|||
|
|
echo "✅ 后端 API 正常"
|
|||
|
|
else
|
|||
|
|
echo "❌ 后端 API 异常"
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
echo ""
|
|||
|
|
echo "=========================================="
|
|||
|
|
echo "✅ 龙虾议事厅启动完成!"
|
|||
|
|
echo "=========================================="
|
|||
|
|
echo ""
|
|||
|
|
echo "📌 访问地址:"
|
|||
|
|
echo " 前端:http://localhost:3000 (需要单独启动)"
|
|||
|
|
echo " 后端 API: http://localhost:8000/api/v1/"
|
|||
|
|
echo ""
|
|||
|
|
echo "📌 进程信息:"
|
|||
|
|
echo " 后端 PID: $BACKEND_PID"
|
|||
|
|
echo ""
|
|||
|
|
echo "📌 停止服务:"
|
|||
|
|
echo " kill $BACKEND_PID"
|
|||
|
|
echo ""
|