2016年答案 :几乎每个Linux发行版都随附systemd,这意味着 永久,monit,PM2等都不再需要-您的OS已经可以处理这些任务
。
制作一个
myapp.service文件(用您的应用名称替换“ myapp”):
[Unit]Description=My app[Service]ExecStart=/var/www/myapp/app.jsRestart=alwaysUser=nobody# Note Debian/Ubuntu uses 'nogroup', RHEL/Fedora uses 'nobody'Group=nobodyEnvironment=PATH=/usr/bin:/usr/local/binEnvironment=NODE_ENV=productionWorkingDirectory=/var/www/myapp[Install]WantedBy=multi-user.target
请注意,如果您不熟悉Unix,则
/var/www/myapp/app.js应该
#!/usr/bin/env node在第一行。
将您的服务文件复制到该
/etc/systemd/system文件夹中。
通过告诉systemd有关新服务的信息
systemctl daemon-reload。
从开始
systemctl start myapp。
使它能够在启动时运行
systemctl enable myapp。
查看日志
journalctl -u myapp
这取自 我们如何在Linux版2018年上部署节点应用程序 ,该 版本
还包括用于生成AWS / DigitalOcean / Azure CloudConfig来构建Linux
/节点服务器(包括
.service文件)的命令。



