Files
meeting-room/start-dev.sh

67 lines
1.7 KiB
Bash
Raw Normal View History

#!/bin/bash
# 龙虾议事厅 - 开发环境快速启动脚本
echo "🏛️ 启动龙虾议事厅开发环境..."
# 检查并停止旧服务
echo "🧹 清理旧服务..."
# 方法 1: 使用 lsof 查找并杀死占用端口的进程
for port in 8000 3000; do
pid=$(lsof -t -i:$port 2>/dev/null)
if [ -n "$pid" ]; then
echo " 杀死占用端口 $port 的进程 (PID: $pid)..."
kill -9 $pid 2>/dev/null
fi
done
# 方法 2: 使用 pkill 清理
pkill -9 -f "manage.py runserver" 2>/dev/null
pkill -9 -f "npm start" 2>/dev/null
pkill -9 -f "node.*react-scripts" 2>/dev/null
sleep 2
# 启动后端
echo "📦 启动后端..."
cd backend
nohup python3 manage.py runserver 0.0.0.0:8000 > /tmp/meeting-backend.log 2>&1 &
BACKEND_PID=$!
sleep 2
if ps -p $BACKEND_PID > /dev/null; then
echo "✅ 后端已启动 (PID: $BACKEND_PID)"
else
echo "❌ 后端启动失败,请检查日志:/tmp/meeting-backend.log"
exit 1
fi
# 启动前端
echo "📦 启动前端..."
cd ../frontend
nohup npm start > /tmp/meeting-frontend.log 2>&1 &
FRONTEND_PID=$!
sleep 3
if ps -p $FRONTEND_PID > /dev/null; then
echo "✅ 前端已启动 (PID: $FRONTEND_PID)"
else
echo "❌ 前端启动失败,请检查日志:/tmp/meeting-frontend.log"
exit 1
fi
echo ""
echo "=========================================="
echo "✅ 开发环境启动完成!"
echo "=========================================="
echo ""
echo "📌 访问地址:"
echo " 前端http://localhost:3000/"
echo " 后端 API: http://localhost:8000/api/v1/"
echo ""
echo "📌 日志文件:"
echo " 后端:/tmp/meeting-backend.log"
echo " 前端:/tmp/meeting-frontend.log"
echo ""
echo "📌 停止服务:"
echo " kill $BACKEND_PID $FRONTEND_PID"
echo ""