Crontab启动节点应用程序永远处于生产模式

时间:2015-03-09 12:31:23

标签: javascript node.js crontab forever

我有一个我开始永远使用的node.js应用程序:

NODE_ENV=production forever start index.js

我还研究了如何设置crontab以在服务器重启时自动启动此应用程序的forever命令:

@reboot /usr/local/bin/forever start /path/to/my/app/index.js

这里唯一的问题是节点环境。如何将生产环境添加到crontab命令?

2 个答案:

答案 0 :(得分:2)

如果你需要在crontab中执行带变量等的特殊命令,那么编写一个简单的shell脚本并从crontab调用该脚本会更容易:

#!/bin/bash
export NODE_ENV=production
/usr/local/bin/forever start /path/to/my/app/index.js

使其可执行:chmod 755 /usr/local/bin/start_my_app.sh

然后在你的crontab中:

@reboot /usr/local/bin/start_my_app.sh

答案 1 :(得分:1)

如果只想设置一个环境变量,可以在forever命令之前使用export命令。

@reboot export NODE_ENV=production; /usr/local/bin/forever start /path/to/my/app/index.js

对于多个变量,Sukima的方法更好。