zl程序教程

您现在的位置是:首页 >  Javascript

当前栏目

PM2用配置文件管理多个Node.js项目!

2023-03-20 14:55:17 时间
一、问题简介

有多个 Node.js 进程需要一起管理时,各自需要的参数也不同时,创建一个配置文件来管理是最好的方案。

二、解决方案
1、生成基础版本配置文件
  • pm2 init simple :可以生成基础版本的配置文件:ecosystem.config.js
// ecosystem.config.js
module.exports = {
    apps: [{
        name: "app1",
        script: "./app.js"
    }]
}
2、生成复杂版本的配置文件
  • pm2 init 等同于 pm2 ecosystem ,可以生成带有 deploy 属性的配置文件:ecosystem.config.js
module.exports = {
    apps: [{
        script: 'index.js',
        watch: '.'
    }, {
        script: './service-worker/',
        watch: ['./service-worker']
    }],

    deploy: {
        production: {
            user: 'SSH_USERNAME',
            host: 'SSH_HOSTMACHINE',
            ref: 'origin/master',
            repo: 'GIT_REPOSITORY',
            path: 'DESTINATION_PATH',
            'pre-deploy-local': '',
            'post-deploy': 'npm install && pm2 reload ecosystem.config.js --env production',
            'pre-setup': ''
        }
    }
};
3、使用配置文件
  • 启动、停止、重启、重载、删除配置文件中所有项目
pm2 start ecosystem.config.js
pm2 stop ecosystem.config.js
pm2 restart ecosystem.config.js
pm2 reload ecosystem.config.js
pm2 delete ecosystem.config.js
  • 启动指定应用
pm2 start   ecosystem.config.js --only api-app
pm2 start 	ecosystem.config.js --only "api-app,worker-app"
三、参考文档