"Nohup 节点构建/索引.js &"不在后台执行



GitLabCI管道中,我运行nohup命令来启动NodeJS服务器。我已经试用了几个版本的命令。没有一个版本完全在后台运行。由于某些原因,他们总是在航站楼里跑步。

这是我最近使用的命令:

ORIGIN=http://$PUBLIC_HOST:$PUBLIC_PORT nohup node build/index.js 
--port $PUBLIC_PORT | ts >> build/log.txt 2>&1 &

我试过最后有没有管子。

该命令的哪个版本在后台记录节点进程的输出以及时间戳,而不挂起终端?

PS:出于安全考虑,我无法使用pm2或其他具有联机度量的守护进程

看了"如何使用nohup在linux中作为后台进程运行进程?"的答案后?,我已经找到了一种让它运行的方法,将core命令封装到bash -c "command"中。

命令现在是

ORIGIN=http://$PUBLIC_HOST:$PUBLIC_PORT  
nohup bash -c "node build/index.js --port $PUBLIC_PORT | ts"  
>> build/out.log 2>&1 &

具有基于以下内容拆分错误和日志的变体https://askubuntu.com/questions/349262/run-a-nohup-command-over-ssh-then-disconnect带有

ORIGIN=http://$PUBLIC_HOST:$PUBLIC_PORT 
nohup bash -c "node build/index.js --port $PUBLIC_PORT | ts" 
1>>build/out.log 
2>>build/err.log &

最新更新