commit
This commit is contained in:
45
start.sh
Normal file
45
start.sh
Normal file
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
# AI MIP 后台启动脚本
|
||||
|
||||
PROJECT_DIR="/home/work/ai_mip"
|
||||
cd ${PROJECT_DIR}
|
||||
|
||||
echo "[INFO] 检查是否有运行中的服务..."
|
||||
# 查找并停止旧进程
|
||||
OLD_PID=$(pgrep -f "python main.py")
|
||||
|
||||
if [ ! -z "$OLD_PID" ]; then
|
||||
echo "[WARN] 发现运行中的服务 (PID: $OLD_PID),正在停止..."
|
||||
pkill -f "python main.py"
|
||||
sleep 2
|
||||
echo "[INFO] 旧服务已停止"
|
||||
else
|
||||
echo "[INFO] 没有运行中的服务"
|
||||
fi
|
||||
|
||||
echo "[INFO] 正在启动服务..."
|
||||
# 激活虚拟环境并后台运行
|
||||
if [ ! -d "venv" ]; then
|
||||
echo "[ERROR] 虚拟环境不存在,请先执行: python3 -m venv venv"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "venv/bin/activate" ]; then
|
||||
echo "[ERROR] 虚拟环境激活脚本不存在"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
source venv/bin/activate
|
||||
|
||||
# 检查依赖是否安装
|
||||
if ! python -c "import schedule" 2>/dev/null; then
|
||||
echo "[WARN] 依赖未安装,正在安装..."
|
||||
pip install -r requirements.txt
|
||||
fi
|
||||
|
||||
nohup python main.py --workers 3 --health-port 8899 > logs/service.log 2>&1 &
|
||||
|
||||
NEW_PID=$!
|
||||
echo "[INFO] 服务已启动"
|
||||
echo "[INFO] 进程ID: $NEW_PID"
|
||||
echo "[INFO] 查看日志: tail -f ${PROJECT_DIR}/logs/service.log"
|
||||
Reference in New Issue
Block a user