處理程序管理

管理應用程式狀態

使用 PM2,您可以輕鬆地在背景中啟動/重新啟動/重新載入/停止/列出應用程式。

啟動

啟動應用程式

$ pm2 start api.js

image

您也可以啟動任何類型的應用程式,例如 bash 指令、指令碼、二進位檔

$ pm2 start "npm run start"
$ pm2 start "ls -la"
$ pm2 start app.py

啟動並顯示記錄串流

要啟動應用程式並查看記錄串流,請使用 --attach 選項

$ pm2 start api.js --attach

透過 Ctrl-C 退出時,應用程式仍會在背景中執行。

傳遞參數

-- 之後傳遞的所有選項都將作為參數傳遞給應用程式

$ pm2 start api.js -- arg1 arg2

組態檔

在同時管理多個應用程式或必須指定多個選項時,您可以使用組態檔。此範例使用 ecosystem.config.js 檔案

module.exports = {
  apps : [{
    name   : "limit worker",
    script : "./worker.js",
    args   : "limit"
  },{
    name   : "rotate worker",
    script : "./worker.js",
    args   : "rotate"
  }]
}

然後啟動兩個應用程式

$ pm2 start ecosystem.config.js

進一步瞭解 組態檔

重新啟動

重新啟動應用程式

$ pm2 restart api

重新啟動所有應用程式

$ pm2 restart all

一次重新啟動多個應用程式

$ pm2 restart app1 app3 app4

更新環境變數和選項

若要更新環境變數或 PM2 選項,請指定 --update-env CLI 選項

$ NODE_ENV=production pm2 restart web-interface --update-env

停止

停止指定的應用程式

$ pm2 stop api
$ pm2 stop [process_id]

停止所有應用程式

$ pm2 stop all

一次停止多個應用程式

$ pm2 stop app1 app3 app4

注意:這不會從 PM2 應用程式清單中刪除應用程式。請參閱下一部分以刪除應用程式。

刪除

停止並刪除應用程式

$ pm2 delete api

刪除所有應用程式

$ pm2 delete all

列出應用程式

列出所有正在執行的應用程式

$ pm2 list
# Or
$ pm2 [list|ls|l|status]

image

指定應用程式的列出順序

$ pm2 list --sort name:desc
# Or
$ pm2 list --sort [name|id|pid|memory|cpu|status|uptime][:asc|desc]

終端機儀表板

PM2 提供一個簡單的方式,讓您監控應用程式的資源使用情況。您可以輕鬆地透過終端機,使用下列指令監控記憶體和 CPU:

pm2 monit

顯示應用程式元資料

顯示應用程式的元資料

$ pm2 show api

drawing

重設重新啟動次數

重設重新啟動計數器

$ pm2 reset all
為此頁面做出貢獻