我已经创建了一个简单的NodeJS应用程序,现在将其移动到了AWS服务器上。
我可以通过ssh登录到服务器并启动应用程序,但很明显,一旦我关闭终端,进程就停止了。
如何启动我的NodeJS应用程序并在关闭终端后使其持续运行?
server.log
文件:nohup node main.js >> server.log 2>&1 < /dev/null &
就像Denys Seguret所说的那样,可以使用forever node软件包来实现。以下是操作步骤 -
通过SSH登录到您的服务器,并以root级别用户全局安装forever
sudo npm install forever --global
要在node脚本上运行forever,请在终端中执行,例如:
forever start server.js
确保通过适当的url在浏览器中启动测试是否正常工作。如果您想检查在服务器上运行的所有forever脚本的状态(您可以在多个脚本上运行它),请运行此命令 -
forever list
要停止forever脚本,您可以运行forever stop
,这将停止您的所有forever脚本,或者运行forever stop 0
,其中0是forever列表中脚本的索引。
我在所有的gulp应用程序中都使用forever,目前还没有遇到任何问题,但我认为我在远程服务器上没有遇到过任何重大的关闭问题。如果发生这种情况,也许我会对forever的可靠性有更多的话要说。这个答案部分内容来自于网站。