PM2 进程管理速查表
把 PM2 最常用命令按启动、日志、集群、监控和配置分组整理,Node.js 部署运维直接复制改参数即可。
返回 编程语言启动与停止 Start & Stop 10
pm2 start app.js启动应用
pm2 start app.js --name "api"启动并命名进程
pm2 start app.js -i max集群模式,按 CPU 核数启动
pm2 start app.js -i 4集群模式,指定 4 个进程
pm2 start ecosystem.config.js用配置文件启动(推荐)
pm2 stop all停止所有进程
pm2 stop api停止指定进程
pm2 restart api重启进程(重载代码)
pm2 reload api零停机重载(集群模式推荐)
pm2 delete api从进程列表删除
日志管理 Logs 5
pm2 logs实时查看所有日志
pm2 logs api --lines 100查看指定进程最近 100 行
pm2 logs api --err只看错误日志
pm2 flush清空所有日志文件
pm2 install pm2-logrotate安装日志轮转模块,防止日志无限增长
监控与状态 Monitor 5
pm2 list列出所有进程
pm2 show api查看进程详情
pm2 monit终端监控面板(CPU/内存)
pm2 status查看进程状态
pm2 describe api查看进程详细描述信息
开机自启 Startup 4
pm2 startup生成开机自启脚本,按提示执行输出的命令
pm2 save保存当前进程列表,开机自启时恢复
pm2 resurrect手动恢复保存的进程列表
pm2 unstartup移除开机自启
生态配置 ecosystem.config.js 5
module.exports = { apps: [{ name: "api", script: "app.js", instances: "max", exec_mode: "cluster" }] }基础集群配置
env: { NODE_ENV: "production", PORT: 3000 }环境变量配置
max_memory_restart: "1G"内存超 1G 自动重启
error_file: "./logs/err.log", out_file: "./logs/out.log"自定义日志路径
watch: true, ignore_watch: ["node_modules", "logs"]文件变化自动重启
💡 提示
- reload 比 restart 更平滑,集群模式下逐个重启实现零停机,单进程模式 reload 等同于 restart。
- pm2 save + pm2 startup 组合实现开机自启,服务器重启后自动恢复所有进程。
- 内存泄漏排查:pm2 monit 观察内存趋势,配置 max_memory_restart 自动重启兜底。