pm2 配置方式

1.命令生产默认示例配置文件pm2 ecosystem或pm2 init,运行默认会生成ecosystem.config.js配置文件

module.exports = {
  apps: [
    {
      name: 'back-Api',      //应用名
      script: './server/start.js',   //应用文件位置
      env: {
        PM2_SERVE_PATH: "./apidoc",    //静态服务路径
        PM2_SERVE_PORT: 8080,   //静态服务器访问端口
        NODE_ENV: 'development' //启动默认模式
      },
      env_production: {
        NODE_ENV: 'production'  //使用production模式 pm2 start ecosystem.config.js --env production
      },
      instances: "max",          //将应用程序分布在所有CPU核心上,可以是整数或负数
      instance_var: "INSTANCE_ID",
      exec_mode: "cluster",
      watch: [
        "server",
      ],  //监听模式,不能单纯的设置为true,易导致无限重启,因为日志文件在变化,需要排除对其的监听
      merge_logs: true,         //集群情况下,可以合并日志
    }
  ],
  deploy: {
    production: {
      user: 'node',                      //ssh 用户
      host: '212.83.163.1',              //ssh 地址
      ref: 'origin/master',             //GIT远程/分支
      repo: 'git@github.com:repo.git',   //git地址
      path: '/var/www/production',       //服务器文件路径
      "post-deploy": 'npm install && pm2 reload ecosystem.config.js --env production'  //部署后的动作
    }
  }
}; 

2.自定义json配置文件如:processes.json;启动pm2 start processes.json

{
  "apps": [{
    "name": "app",  //名称
    "script": "./", //程序入口
    "cwd": "./",           //根目录
    "watch": [
      "views"
    ],//需要监控的目录
    "error_file": "./logs/err.log",//错误输出日志
    "out_file": "./logs/out.log",  //日志
    "log_date_format": "YYYY-MM-DD HH:mm Z" //日期格式
  }]
}

.

posted @ 2019-07-16 21:35  每天都要进步一点点  阅读(4021)  评论(0编辑  收藏  举报