在伺服器上使用pm2來守護專案
阿新 • • 發佈:2020-07-26
pm2介紹
pm2是nodejs的一個帶有負載均衡功能的應用程序管理器的模組,類似有Supervisor,forever,用來進行程序管理。
對於線上的專案,如果直接使用npm啟動專案,報錯了可能直接停止導致整個服務崩潰,終端關掉的話也可能導致專案停止。
使用
在專案中的package.json中寫入pm2指令碼:
"scripts": { "dev": "nuxt", "build": "nuxt build && npm start", "start": "nuxt start", "generate": "nuxt generate", "lint": "eslint --ext .js,.vue .", "precommit": "npm run lint", "pm2": "pm2 start npm --name 'blog' -- run build --watch" }
在伺服器上使用的時候直接yarn pm2就可以啟動專案了
pm2常用的命令
命令 | 描述 |
---|---|
pm2 start |
啟動專案 |
pm2 list | 檢視程序 |
pm2 show 0 或者 # pm2 info 0 | 檢視程序詳細資訊,0為PM2程序id |
pm2 monit | 進入監視頁面,監視每個node程序的CPU和記憶體的使用情況 |
pm2 stop all | 停止PM2列表中所有的程序 |
pm2 stop 0 | 停止PM2列表中程序為0的程序 |
pm2 reload all | 過載PM2列表中所有的程序 |
pm2 reload 0 | 過載PM2列表中程序為0的程序 |
pm2 restart all | 重啟PM2列表中所有的程序 |
pm2 restart 0 | 重啟PM2列表中程序為0的程序 |
pm2 delete 0 | 刪除PM2列表中程序為0的程序 |
pm2 delete all | 刪除PM2列表中所有的程序 |
pm2 logs | 顯示所有程序的日誌 |
pm2 logs 0 | 顯示程序id為 0 的日誌 |
pm2 flush | 清空所有日誌檔案 |
pm2 reloadLogs | 過載所有日誌 |
npm install pm2@lastest -g | 安裝最新的PM2版本 |
pm2 updatePM2 | 升級pm2 |
pm2 --help | 檢視更多的命令 |