first commit
This commit is contained in:
46
stop_api.sh
Normal file
46
stop_api.sh
Normal file
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
# stop_api.sh - 停止API服务
|
||||
|
||||
PID_FILE=logs/api.pid
|
||||
|
||||
echo "========================================"
|
||||
echo "停止 AI+合规智能中枢 API服务"
|
||||
echo "========================================"
|
||||
echo ""
|
||||
|
||||
if [ -f "$PID_FILE" ]; then
|
||||
PID=$(cat $PID_FILE)
|
||||
|
||||
if ps -p $PID > /dev/null 2>&1; then
|
||||
echo "正在停止服务 (PID: $PID)..."
|
||||
kill $PID
|
||||
|
||||
# 等待进程结束
|
||||
sleep 2
|
||||
|
||||
if ps -p $PID > /dev/null 2>&1; then
|
||||
echo "进程未响应,强制终止..."
|
||||
kill -9 $PID
|
||||
fi
|
||||
|
||||
rm -f $PID_FILE
|
||||
echo "服务已停止"
|
||||
else
|
||||
echo "进程已不存在,清理PID文件"
|
||||
rm -f $PID_FILE
|
||||
fi
|
||||
else
|
||||
echo "PID文件不存在,服务可能未运行"
|
||||
|
||||
# 尝试查找并停止所有uvicorn进程
|
||||
UVICORN_PIDS=$(pgrep -f "uvicorn src.api.main")
|
||||
if [ -n "$UVICORN_PIDS" ]; then
|
||||
echo "发现运行中的uvicorn进程: $UVICORN_PIDS"
|
||||
echo "是否停止这些进程? (y/n)"
|
||||
read -r answer
|
||||
if [ "$answer" = "y" ]; then
|
||||
kill $UVICORN_PIDS
|
||||
echo "进程已停止"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
Reference in New Issue
Block a user