【发布时间】:2016-09-13 01:59:07
【问题描述】:
我现在拥有的是一个节点服务器(forever.js 在Ubuntu 14.04 LTS),每次服务器 PC 启动时都需要启动它。
所以,要做到这一点,我们需要的是这个命令(每次 PC 启动或重启)-
forever start /var/www/websocket/websocket.js
如果我在直接命令行中运行此命令,它工作正常。
但我希望它在服务器 PC 开启或重新启动时自动启动。
所以我所做的(根据https://stackoverflow.com/a/13388741/2193439)是-
运行crontab -e并将这段代码放在控制台中-
@reboot forever start /var/www/websocket/websocket.js
像这样-
为了检查我的玉米日志,我已经这样做了-
sudo grep --color -i cron /var/log/syslog
发现了这样的东西-
但我发现服务器没有按此运行-
forever list
并且拥有 - 没有永远运行的进程
但是如果我运行这个-
forever start /var/www/websocket/websocket.js
然后运行这个-
forever list
那我有这个-
我向你确认 crontab 也在运行,因为如果我改变这个-
@reboot forever start /var/www/websocket/websocket.js
到这里-
@reboot cd /var/www/websocket/ && touch cron_try.txt
每次电脑重启时我都有这个文件。
这个我已经试过了-
- Automatically start forever (node) on system restart
- Automatically restart node server
- http://www.hacksparrow.com/make-forever-reboot-proof-with-cron.html
- https://github.com/foreverjs/forever/issues/58
还有这个-
cronjob does not execute a script that works fine standalone
几乎是我的问题。但我在重启期间为 Node.js 设置了它。
所以它不能解决我的问题。
有人可以帮忙吗?
【问题讨论】:
标签: node.js ubuntu cron crontab forever