主题
PM2 完整常用命令速查
说明:文档统一使用 app 代指应用名称/进程ID,可直接替换为自己的项目名或ID,所有命令开箱即用,适配全场景运维。
一、PM2 安装与版本查看
bash
# 全局安装 PM2(必须全局,系统任意目录可调用)
npm install pm2 -g
# 查看 PM2 版本(验证安装是否成功)
pm2 -v
pm2 --version二、核心常用操作命令(标准通用)
备注:app = 应用程序名称 / 进程ID,可自定义替换
bash
# 1. 启动应用程序
pm2 start app
# 2. 停止应用程序
pm2 stop app
# 3. 重启应用程序
pm2 restart app
# 4. 监控应用程序日志(实时查看运行报错)
pm2 logs app
# 5. 监听文件变化,自动重启应用
pm2 start app --watch
# 6. 设置系统开机自启
pm2 startup
# 7. 删除指定应用进程
pm2 delete app
# 8. 查看应用详细信息
pm2 show app三、批量 & 全局进程命令
bash
# 查看所有运行中的进程列表
pm2 list
# 停止所有应用
pm2 stop all
# 重启所有应用
pm2 restart all
# 重载所有应用(零停机更新,生产首选)
pm2 reload all
# 清空所有历史日志
pm2 flush
# 监控进程 CPU/内存资源占用
pm2 monit
# 彻底清空所有进程,关闭PM2
pm2 kill四、生产环境开机自启完整配置
bash
# 保存当前运行的所有进程列表
pm2 save
# 生成系统开机自启服务
pm2 startup
# 取消系统开机自启
pm2 unstartup五、自定义启动进阶用法
bash
# 自定义应用名称启动
pm2 start index.js --name 自定义app名
# 多核运行,最大化利用服务器性能
pm2 start index.js -i max
# 零停机重载更新项目(生产环境更新代码首选)
pm2 reload app六、运维核心注意事项
生产优先使用 reload:reload 实现零停机更新代码,restart 会中断用户连接,生产环境尽量少用重启。
统一自定义应用名:启动项目时自定义名称,避免默认进程标识混乱,方便精准操作单个应用。
服务器重启前执行 pm2 save:保存进程状态,否则服务器重启后项目无法自动恢复运行。
报错优先查看日志:项目异常、接口报错时,使用
pm2 logs app快速定位问题。delete 为彻底删除进程:删除后需重新 start 才能启动,仅停用服务建议使用 stop。
七、标准生产部署流程
代码更新 → pm2 reload app 热更新生效 → pm2 logs app 校验运行正常