1.管理应用程序状态

使用 PM2,您可以在后台轻松启动/重启/重新加载/停止/列出应用程序。

1.1.开始

要启动应用程序:

  1. $ pm2 start api.js

2.流程管理 - 图1

您还可以启动任何类型的应用程序,如 bash 命令、脚本、二进制文件:

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

1.1.1.启动并显示日志流

要启动应用程序并检查日志流,请使用以下--attach选项:

  1. $ pm2 start api.js --attach

通过 Ctrl-C 退出时,应用程序仍将在后台运行。

1.1.2.传递参数

之后--传递的所有选项都将作为参数传递给应用程序:

  1. $ pm2 start api.js -- arg1 arg2

1.1.3.配置文件

当同时管理多个应用程序或必须指定多个选项时,您可以使用配置文件。此ecosystem.config.js 文件的示例:

  1. module.exports = {
  2. apps : [{
  3. name : "limit worker",
  4. script : "./worker.js",
  5. args : "limit"
  6. },{
  7. name : "rotate worker",
  8. script : "./worker.js",
  9. args : "rotate"
  10. }]
  11. }

然后启动这两个应用程序:

  1. $ pm2 start ecosystem.config.js

阅读有关配置文件的更多信息。

1.2.重新开始

要重新启动应用程序:

  1. $ pm2 restart api

要重新启动所有应用程序:

  1. $ pm2 restart all

一次重新启动多个应用程序:

  1. $ pm2 restart app1 app3 app4

1.2.1.更新环境变量和选项

要更新环境变量或 PM2 选项,请指定--update-env CLI 选项:

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

1.3.停止

要停止指定的应用程序:

  1. $ pm2 stop api
  2. $ pm2 stop [process_id]

要阻止他们:

  1. $ pm2 stop all

一次停止多个应用程序:

  1. $ pm2 stop app1 app3 app4

注意:这不会从 PM2 应用程序列表中删除该应用程序。请参阅下一节以删除应用程序。

1.4.删除

要停止和删除应用程序:

  1. $ pm2 delete api

要全部删除它们:

  1. $ pm2 delete all

2.列出应用程序

列出所有正在运行的应用程序:

  1. $ pm2 list
  2. # Or
  3. $ pm2 [list|ls|l|status]

2.流程管理 - 图2

要指定您希望应用程序列出的顺序:

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

2.1.终端仪表板

PM2 为您提供了一种监视应用程序资源使用情况的简单方法。您可以通过终端轻松直接地监控内存和 CPU:

  1. pm2 monit

image.png

2.2.显示应用程序元数据

要显示有关应用程序的元数据:

  1. $ pm2 show api

2.流程管理 - 图4

2.3.重置重启次数

重置重启计数器:

  1. $ pm2 reset all