From fb740eb703476043db71dc0a9af173b60b0ff1d8 Mon Sep 17 00:00:00 2001 From: flying-hero <462087392@qq.com> Date: Sat, 4 Apr 2026 18:35:56 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=A6=20=E9=85=8D=E7=BD=AE=E8=99=9A?= =?UTF-8?q?=E6=8B=9F=E7=8E=AF=E5=A2=83=E5=92=8C=E7=AB=AF=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 变更: - 添加 requirements.txt - 更新 start.sh(使用虚拟环境) - 更新 .gitignore(忽略 venv/和 node_modules/) - 端口调整为 4000/9000 --- .gitignore | 32 +++---------------- requirements.txt | 5 +++ start.sh | 83 +++++++++++++++++++++++++++++++++--------------- 3 files changed, 68 insertions(+), 52 deletions(-) create mode 100644 requirements.txt diff --git a/.gitignore b/.gitignore index ea81751..358efb9 100644 --- a/.gitignore +++ b/.gitignore @@ -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/ diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..636391c --- /dev/null +++ b/requirements.txt @@ -0,0 +1,5 @@ +# 龙虾监控中心 - 依赖包 +Django>=4.2,<5.0 +djangorestframework>=3.14 +django-cors-headers>=4.3 +psycopg2-binary>=2.9 diff --git a/start.sh b/start.sh index b576f54..ae0fd42 100755 --- a/start.sh +++ b/start.sh @@ -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 ""