如何使用cron重启PM2?

时间:2018-02-28 09:44:57

标签: node.js pm2

我需要找一个cron命令,它会在进程中重启pm2,但前提是它还没有运行

pm2 start app.js启动应用,即使它已在运行。

我可以使用的另一个命令只会重启app.js如果它还没有运行,我将如何在crontab中编写它?

1 个答案:

答案 0 :(得分:1)

在pm2中没有默认方式来实现这一点,而不是为此编写shell脚本。

#!/bin/bash

pm2 describe appname > /dev/null 
RUNNING=$?  

if [ "${RUNNING}" -ne 0 ]; then
    pm2 start ./yourscriptpath
else
    pm2 restart appname
fi;

将此shell脚本保存为pm2_starter.sh,然后

crontab -e

并在此处添加

 */30 * * * * ./home/ridham/stackoverflow/pm2_starter.sh

这将每30分钟运行一次。

如果app在pm2下运行,脚本将重启,否则它将启动它。您足够聪明,可以根据您的用例进行编辑