admin 发表于 2026-8-11 15:51:28

PM2工具安装与Node项目进程守护搭建

PM2 工具安装与 Node 项目进程守护搭建

PM2 是一个流行的 Node.js 进程管理器,具有负载均衡、日志管理、进程守护和自动重启等功能。下面介绍如何安装和使用 PM2 来守护你的 Node.js 项目。

安装 PM2

[*]全局安装 PM2(推荐):

   npm install pm2@latest -g# 或者使用 yarn: yarn global add pm2

[*]验证安装:

   pm2 --version

基本使用

启动应用

[*]启动 Node 应用:

   pm2 start app.js# 替换为你的入口文件

[*]带名称启动(方便管理):

   pm2 start app.js --name "my-app"

[*]启动并指定日志文件:

   pm2 start app.js --log ./my-app-logs.log

常用命令

[*]列出所有进程:

pm2 list

[*]停止特定应用:

pm2 stop app_name_or_id

[*]重启应用:

pm2 restart app_name_or_id

[*]删除应用(从 PM2 列表中移除):

pm2 delete app_name_or_id

[*]查看应用日志:

pm2 logs app_name_or_id

高级配置

使用生态系统文件 (ecosystem.config.js)

[*]生成示例配置文件:

   pm2 ecosystem

[*]编辑生成的 ecosystem.config.js 文件:

   module.exports = {
   apps: [{
       name: 'my-app',
       script: 'app.js',
       instances: 'max', // 或指定数字,使用所有CPU核心
       autorestart: true,
       watch: false, // 开发时设为true可自动重启
       max_memory_restart: '1G',
       env: {
         NODE_ENV: 'production'
       },
       env_development: {
         NODE_ENV: 'development'
       }
   }]
   };

[*]使用配置文件启动:

   pm2-runtime start ecosystem.config.js# 或 pm2 start ecosystem.config.js

集群模式

PM2 可以轻松启用 Node.js 的集群模式:
pm2 start app.js -i max# 根据CPU核心数启动多个实例

开机自启动

[*]保存当前进程列表:

   pm2 save

[*]设置开机启动:

   pm2 startup# 然后按照提示操作(平台特定命令)

[*]恢复之前保存的进程:

   pm2 resurrect

监控

PM2 提供了内置的监控功能:
pm2 monit# 实时监控资源使用情况

或者使用更详细的日志:
pm2 logs

部署到生产环境

对于生产环境,建议:

[*]使用 NODE_ENV=production
[*]启用集群模式
[*]设置适当的内存限制
[*]配置日志轮转
[*]设置开机自启动


卸载 PM2 管理的应用(但不卸载 PM2 本身)

pm2 unstartup# 移除开机启动(平台特定)
pm2 kill       # 停止所有PM2进程并删除PM2进程
# 或者逐个删除应用

PM2 是一个功能强大的工具,可以显著提高 Node.js 应用的生产环境可靠性。根据你的具体需求,可以灵活配置各种参数。
页: [1]
查看完整版本: PM2工具安装与Node项目进程守护搭建