fix: keepalive 保活脚本改用 node 绝对路径

cron 环境 PATH 不含 nvm 目录,nohup node 找不到命令导致服务一直拉不起来
(HTTP=000)。改用 $HOME/.nvm/.../bin/node 绝对路径,模拟 cron 最小环境
验证可正常拉起。
This commit is contained in:
2026-08-19 16:39:45 +08:00
parent 6b5223daec
commit d7c7c08407
+11 -1
View File
@@ -6,6 +6,12 @@ PORT=16016
APP_DIR="/home/openclaw/.openclaw/workspace-hz4th_coder/works/data-chart-tool"
LOG_FILE="$APP_DIR/logs/server.log"
# node 绝对路径(cron 环境 PATH 不含 nvm,必须用全路径)
NODE_BIN="$HOME/.nvm/versions/node/v24.15.0/bin/node"
if [ ! -x "$NODE_BIN" ]; then
NODE_BIN="$(command -v node 2>/dev/null)"
fi
# 检查端口是否被占用
if ss -tlnp | grep -q ":$PORT "; then
# 检查是不是 node 进程
@@ -28,9 +34,13 @@ if ss -tlnp | grep -q ":$PORT "; then
fi
# 启动 node 服务
if [ -z "$NODE_BIN" ] || [ ! -x "$NODE_BIN" ]; then
echo "[$(date)] ERROR: node 未找到,无法启动"
exit 1
fi
echo "[$(date)] Starting data-chart-tool..."
cd "$APP_DIR"
nohup node server.js >> "$LOG_FILE" 2>&1 &
nohup "$NODE_BIN" server.js >> "$LOG_FILE" 2>&1 &
echo "[$(date)] Started with PID $!"
# 等待启动