# PM2进程管理工具

# 概述

PM2是一个守护进程管理工具,由nodejs语言编写,通过CLI命令行工作,可以用于启动和管理nodejs、python、java应用。

// 安装
npm install pm2 -g

// 测试
pm2 -v

如果没有打印成功,可以把pm2全局安装路径下的bin目录添加到系统环境变量,例如

E:\Program Files x86\Nodejs\node_global\node_modules\pm2\bin

# 启动应用

# 启动nodejs应用

最简单方式

pm2 start app.js

默认会在C:\Users\gh326\.pm2\logs生成日志文件

# 启动java应用

  • 通过命令行启动:
$ pm2 start -n my-app-name java -- -jar ./appName.jar
  • 通过json文件启动,在 jar 包同级目录创建 app.json
{
  "apps": {
    "name": "my-app-name", // 应用名称,可自定义
    "script": "java", // 命令名称
    "error_file": "./log/err.log", // 错误日志路径
    "out_file": "./log/out.log", // 输出日志路径
    "log_date_format": "YYYY/MM/DD HH:mm:ss", // 日志日期格式
    "args": [
      "-jar",
      "appName.jar"
    ]
  }
}
pm2 start app.json

注意:

​ 一般jar包会默认配置日志,因此可以禁用pm2日志,可以将error_fileout_file的值设置为固定值"/dev/null",和平台无关。

# 启动python应用

pm2 start python_web.py --interpreter python3

# 管理应用

通过进程name或id管理进程

  • 启动应用
pm2 start app.js
  • 停止应用
pm2 stop name 
  • 重启应用
pm2 reload name
  • 删除应用
pm2 delete name

# 进程检查

  • 查看服务信息
pm2 ls
  • 打印日志
pm2 logs -h
  • 显示1000行
pm2 logs server --lines 1000
  • 仪表盘监测
pm2 monit
  • 清空日志
pm2 flush server

# 开启自启

# windows环境

  • 安装Windows自启动包
npm install pm2-windows-startup -g

创建开机自启动脚本

pm2-startup install

随后在启动、更改、删除进程后执行:

  • 保存应用程序列表
pm2 save
  • 恢复保存的进程
pm2 resurrect
Last Updated: 11/18/2024, 4:01:47 PM