在一台Debian服务器上,我安装了Node.js。我知道如何用这个命令行从putty启动一个应用程序:
node /srv/www/MyUserAccount/server/server.js
并在地址50.51.52.53:8080 (IP和端口)上访问它。
但是当我一关闭putty,我就无法到达50.51.52.53:8080这个地址了。
如何让一个Node.js应用程序永久运行?
你可以猜到,我是Linux和Node.js的初学者。
在一台Debian服务器上,我安装了Node.js。我知道如何用这个命令行从putty启动一个应用程序:
node /srv/www/MyUserAccount/server/server.js
并在地址50.51.52.53:8080 (IP和端口)上访问它。
但是当我一关闭putty,我就无法到达50.51.52.53:8080这个地址了。
如何让一个Node.js应用程序永久运行?
你可以猜到,我是Linux和Node.js的初学者。
当前回答
你可以使用PM2,它是一个带有内置负载均衡器的Node.js应用程序的生产过程管理器。
安装PM2
$ npm install pm2 -g
启动应用程序
$ pm2 start app.js
如果你使用express,你可以启动你的应用程序
pm2 start ./bin/www --name="app"
列出所有正在运行的进程:
$ pm2 list
它将列出所有进程。然后,您可以使用以下命令使用应用程序的ID或名称来停止/重新启动服务。
$ pm2 stop all
$ pm2 stop 0
$ pm2 restart all
显示日志
$ pm2 logs ['all'|app_name|app_id]
其他回答
我希望这对你有所帮助。
在命令行,永远安装:
npm install forever -g
创建一个示例文件:
sudo nano server.js
您可以编辑该文件并直接在浏览器中获得结果。 您可以使用filezilla或任何编辑器来编辑该文件。 运行文件:
forever start --minUptime 1 --spinSleepTime 1000 -w server.js
我建议寻找诸如Forever之类的东西来在崩溃时重新启动Node,并为您处理这个守护进程。
nohup工作,我检查了AWS ubto vm遵循正确的语法
ubuntu@ip-172-00-00-00:~/ms$ nohup node server.js &
然后按enter键,您将看到这一行
ubuntu@ip-172-00-00-00:~/ms$ nohup: ignoring input and appending output to ‘nohup.out’
然后输入这个
rm nohup.out
安装
$ [sudo] npm install forever -g
您可以使用forever来连续运行脚本
forever start server.js
forever list
停止服务
forever stop server.js
尝试pm2以使应用程序永远运行。
NPM安装-g pm2
然后使用
启动server.js
要列出和停止应用程序,使用命令
pm2列表
Pm2停止0