📦 配置虚拟环境和端口

变更:
- 添加 requirements.txt
- 更新 start.sh(使用虚拟环境)
- 更新 .gitignore(忽略 venv/和 node_modules/)
- 端口调整为 4000/9000
This commit is contained in:
2026-04-04 18:35:56 +08:00
parent 7be35039ed
commit fb740eb703
3 changed files with 68 additions and 52 deletions

32
.gitignore vendored
View File

@@ -5,31 +5,16 @@ __pycache__/
*.so
.Python
venv/
env/
ENV/
.venv
env/
*.egg-info/
dist/
build/
# Django
*.log
local_settings.py
db.sqlite3
media/
staticfiles/
static/
# Node
node_modules/
npm-debug.log
yarn-error.log
build/
# 环境变量
.env
.env.local
.env.*.local
*.pot
*.pyc
# IDE
.vscode/
@@ -42,12 +27,5 @@ build/
.DS_Store
Thumbs.db
# 测试
.pytest_cache/
.coverage
htmlcov/
# Docker
*.pid
*.seed
*.pid.lock
# Node
node_modules/

5
requirements.txt Normal file
View File

@@ -0,0 +1,5 @@
# 龙虾监控中心 - 依赖包
Django>=4.2,<5.0
djangorestframework>=3.14
django-cors-headers>=4.3
psycopg2-binary>=2.9

View File

@@ -1,43 +1,76 @@
#!/bin/bash
# 龙虾舰队监控中心 - 启动脚本
set -e
PROJECT_DIR="/home/node/.openclaw/workspace/flying-hero/projects/monitoring-website"
BACKEND_DIR="$PROJECT_DIR/code/backend"
FRONTEND_DIR="$PROJECT_DIR/code/frontend"
VENV_DIR="$BACKEND_DIR/venv"
echo "🦞 启动龙虾舰队监控中心..."
# 检查并创建虚拟环境
if [ ! -d "code/backend/venv" ]; then
# 检查虚拟环境
if [ ! -d "$VENV_DIR" ]; then
echo "📦 创建 Python 虚拟环境..."
cd code/backend
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cd ../..
python3 -m venv "$VENV_DIR"
echo "📦 安装依赖..."
"$VENV_DIR/bin/pip" install Django djangorestframework django-cors-headers psycopg2-binary -q
fi
# 停止旧服务
echo "📌 停止旧服务..."
pkill -f "monitoring-website.*runserver" 2>/dev/null || true
pkill -f "http.server 4000" 2>/dev/null || true
sleep 1
# 启动后端
echo "📡 启动 Django 后端..."
cd code/backend
source venv/bin/activate
python manage.py runserver 0.0.0.0:8000 &
echo "🚀 启动 Django 后端 (端口 9000)..."
cd "$BACKEND_DIR"
nohup "$VENV_DIR/bin/python" manage.py runserver 0.0.0.0:9000 > /tmp/monitoring-backend.log 2>&1 &
BACKEND_PID=$!
# 等待后端启动
sleep 3
# 启动前端
echo "🎨 启动前端服务..."
cd ../frontend
python3 -m http.server 4000 &
echo "🚀 启动前端服务 (端口 4000)..."
cd "$FRONTEND_DIR"
nohup python3 -m http.server 4000 --bind 127.0.0.1 > /tmp/monitoring-frontend.log 2>&1 &
FRONTEND_PID=$!
echo ""
echo "✅ 监控中心已启动!"
echo ""
echo "访问地址:"
echo " 前端http://localhost:4000"
echo " 后端 API: http://localhost:9000/api/"
echo " API 测试http://localhost:9000/api/lobsters/"
echo ""
echo "按 Ctrl+C 停止服务"
# 等待前端启动
sleep 2
# 等待进程
wait
# 测试服务
echo ""
echo "🧪 测试服务..."
if curl -s http://127.0.0.1:9000/api/agents/ > /dev/null 2>&1; then
echo "✅ 后端 API 正常"
else
echo "❌ 后端 API 异常"
fi
if curl -s http://127.0.0.1:4000/ > /dev/null 2>&1; then
echo "✅ 前端服务正常"
else
echo "❌ 前端服务异常"
fi
echo ""
echo "=========================================="
echo "✅ 龙虾舰队监控中心启动完成!"
echo "=========================================="
echo ""
echo "📌 访问地址:"
echo " 监控面板http://127.0.0.1:4000"
echo " 后端 API: http://127.0.0.1:9000/api/"
echo " API 测试http://127.0.0.1:9000/api/agents/"
echo ""
echo "📌 进程信息:"
echo " 后端 PID: $BACKEND_PID"
echo " 前端 PID: $FRONTEND_PID"
echo ""
echo "📌 停止服务:"
echo " kill $BACKEND_PID $FRONTEND_PID"
echo ""