我需要在 16.4 上永久运行“node js”项目
并使用永久包装在 ubuntu 中后台运行
现在我想为 ubuntu 添加一个启动服务但我搜索没有结果。
我创建了一个test.conf
名为/etc/init.d
测试.conf:
start on startup
exec forever start /root/node/node_modules/.bin/www
答案1
最简单的用法是systemd service
:
安装
forever
:[sudo] npm install forever -g
编写并存储脚本以在首选位置运行。
写入
Systemd service
:[Unit] Description=forever service After=network.target [Service] ExecStart=/home/george/.npm-global/bin/forever start /root/node/node_modules/.bin/www ExecStop=/home/george/.npm-global/bin/forever stop /root/node/node_modules/.bin/www Restart=always RestartSec=10 # Restart service after 10 seconds if node service crashes StandardOutput=syslog # Output to syslog StandardError=syslog # Output to syslog SyslogIdentifier=nodejs-example [Install] WantedBy=multi-user.target
将
systemd service
文件另存/etc/systemd/system
为myforever.service
(或使用您喜欢的任何名称)。启动服务并在启动时启用。
sudo systemctl start myforever.service sudo systemctl enable myforever.service
检查它是否正在运行:
sudo systemctl status myforever.service
要随时停止并禁用它:
sudo systemctl stop myforever.service sudo systemctl disable myforever.service
笔记:
- 这是一个简化版本,有
systemd service
许多可用的选项 - 该服务也可以
myforever
不带.service
扩展名调用,systemd
将选择正确的文件 - 这
/home/george/.npm-global/bin/forever
是我的node
模块保存的位置,你的模块会有所不同。使用which forever
附加信息:
https://www.axllent.org/docs/view/nodejs-service-with-systemd/
答案2
我使用“forever service-systemd”,因为我的 ubuntu 是 16.04
首次使用:包-->永远并检查此页面:
如果是新贵:https://github.com/zapty/forever-service
如果是 systemd :https://www.npmjs.com/package/service-systemd