需在 windows server 重新啟動的時候,
自動執行 pm2 start someapp.js,
pm2 有 startup command 提供此機制,但不支援 windows,
以下是 worked solution
The following is my latest solution which works really well:
- create a specific Windows user for running node scripts
- login as that user and npm install pm2 -g
- pm2 start all the apps I would like to have startup
- pm2 save to save the current process list
- create a .bat file and within it paste the following commands:
@echo off
set HOMEDRIVE=C:
set HOMEPATH=\Users\%USERNAME%
set path=C:\Users\%USERNAME%\AppData\Roaming\npm;%path%
pm2 delete all & pm2 resurrect
Use Windows Task Scheduler to create a task that:
- runs "whether user is logged on or not"
- is Triggered "At startup"
- is configured to run the .bat file that we created
reference: https://github.com/Unitech/pm2/issues/1079