需求
我们有一些场景需要服务器,比如一台mac重启后自动启动某些应用,比如自重启服务器数据库,此时,我们可以用以下办法:
- pm2 重启
- launchctl 守护进程
pm2 重启
现在nodejs很多应用是用pm2部署的,pm2自带能够自重启的功能
设置步骤
- 先用pm2启动应用
pm2 start ./dist/client/ --watch --ignore-watch="node_modules"
然后用pm2 status 查看该应用是否显示正常
pm2 status
- pm2 startup
在终端执行pm2 startup,会输出如下:
[PM2] Init System found: launchd
[PM2] To setup the Startup Script, copy/paste the following command:
sudo env PATH=$PATH:/usr/local/bin /usr/local/lib/node_modules/pm2/bin/pm2 startup launchd -u tuxiuluo --hp /Users/tuxiuluo
- 此时,按照提示,复制上一步骤出现的一行命令,在终端执行
在终端执行:
sudo env PATH=$PATH:/usr/local/bin /usr/local/lib/node_modules/pm2/bin/pm2 startup launchd -u tuxiuluo --hp /Users/tuxiuluo
如果正常,终端会输出:
[PM2] Init System found: launchd
Platform launchd
Template
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.