要在 CentOS 上使用 nohup 运行 Node.js 程序,请按照以下步骤操作:
打开终端。
切换到您的 Node.js 项目目录。例如,如果您的 Node.js 项目位于 /home/username/my-nodejs-app
,请运行以下命令:
cd /home/username/my-nodejs-app
确保您的项目中有一个 package.json
文件,其中包含一个名为 start
的脚本,用于启动您的 Node.js 应用程序。例如:
{
"name": "my-nodejs-app",
"version": "1.0.0",
"scripts": {
"start": "node app.js"
},
"dependencies": {
// ...
}
}
使用 nohup 命令运行您的 Node.js 应用程序。这将使您的应用程序在后台运行,即使您关闭终端窗口,它也会继续运行。请确保将输出重定向到一个日志文件,以便在出现问题时进行调试。例如:
nohup npm start > output.log 2>&1 &
这将运行 npm start
命令,并将标准输出和错误输出重定向到名为 output.log
的文件。&
符号使进程在后台运行。
您现在可以关闭终端窗口,Node.js 应用程序将继续在后台运行。要检查应用程序的输出,可以查看 output.log
文件:
tail -f output.log
如果您需要停止使用 nohup 运行的 Node.js 应用程序,可以找到进程 ID(PID),然后使用 kill
命令终止它。首先,找到进程 ID:
ps -ef | grep app.js
在输出中找到您的 Node.js 应用程序进程,它应该显示类似于以下内容:
username 12345 12340 0 08:00 ? 00:00:01 node app.js
其中,12345
是进程 ID。要停止进程,请运行:
kill 12345
请将 12345
替换为您在上一步中找到的实际进程 ID。