优化部署脚本的进程监测逻辑
This commit is contained in:
@@ -453,18 +453,20 @@ do_deploy() {
|
|||||||
echo "$TARGET_VERSION" > "${DEPLOY_DIR}/data/version.ini"
|
echo "$TARGET_VERSION" > "${DEPLOY_DIR}/data/version.ini"
|
||||||
print_success "版本写入: ${TARGET_VERSION}"
|
print_success "版本写入: ${TARGET_VERSION}"
|
||||||
|
|
||||||
# ----- 检查 frpc 子进程 -----
|
# ----- 检查 frpc 子进程(基于 PID 文件)-----
|
||||||
print_step "检查 frpc 状态..."
|
print_step "检查 frpc 状态..."
|
||||||
sleep 3
|
sleep 3
|
||||||
if docker ps --format '{{.Names}}' | grep -q "^frpc-console$"; then
|
|
||||||
if docker exec frpc-console ps aux 2>/dev/null | grep -q "[f]rpc -c"; then
|
PID_FILE="${DEPLOY_DIR}/data/frpc.pid"
|
||||||
print_success "frpc 进程运行正常"
|
if [ -f "$PID_FILE" ]; then
|
||||||
|
PID=$(cat "$PID_FILE" 2>/dev/null | tr -d ' \n')
|
||||||
|
if [ -n "$PID" ] && kill -0 "$PID" 2>/dev/null; then
|
||||||
|
print_success "frpc 进程运行正常 (PID: $PID)"
|
||||||
else
|
else
|
||||||
print_warn "frpc 进程未运行(可能配置为空,请在 WebUI 中导入 TOML)"
|
print_warn "frpc 进程未运行(PID 文件存在但进程已退出,可能配置为空)"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
print_error "frpc-console 容器未运行"
|
print_warn "frpc 进程未运行(PID 文件不存在,请导入 TOML 后重试)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ----- 验证数据库 -----
|
# ----- 验证数据库 -----
|
||||||
|
|||||||
Reference in New Issue
Block a user