diff --git a/keepalive.sh b/keepalive.sh index 002f3d4..c06ffa2 100755 --- a/keepalive.sh +++ b/keepalive.sh @@ -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 $!" # 等待启动