/* pm2命令 $ npm install pm2 -g # 命令行安装 pm2 $ pm2 start app.js -i 4 # 后台运行pm2,启动4个app.js # 也可以把'max' 参数传递给 start # 正确的进程数目依赖于Cpu的核心数目 $ pm2 start app.js --name my-api # 命名进程 $ pm2 list # 显示所有进程状态 $ pm2 monit # 监视所有进程 $ pm2 logs # 显示所有进程日志 $ pm2 stop all # 停止所有进程 $ pm2 restart all # 重启所有进程 $ pm2 reload all # 0 秒停机重载进程 (用于 NETWORKED 进程) $ pm2 stop 0 # 停止指定的进程 $ pm2 restart 0 # 重启指定的进程 $ pm2 startup # 产生 init 脚本 保持进程活着 $ pm2 web # 运行健壮的 computer API endpoint (http://localhost:9615) $ pm2 delete 0 # 杀死指定的进程 $ pm2 delete all # 杀死全部进程 */ module.exports = { apps: [ { name: 'bamboo_manage', // 项目名 script: './bin/main.js', // 执行文件 cwd: './', // 根目录 args: '', // 传递给脚本的参数 interpreter: '', // 指定的脚本解释器 interpreter_args: '', // 传递给解释器的参数 exec_mode: 'fork', // 应用启动模式,支持fork和cluster模式 instances: 1, // 应用启动实例个数,仅在cluster模式有效 默认为fork;或者 max max_memory_restart: '1G', // 最大内存限制数,超出自动重启 error_file: './logs/pm2/error.log', //错误输出日志 out_file: './logs/pm2/out.log', //日志 merge_logs: true, // 设置追加日志而不是新建日志 log_date_format: 'YYYY-MM-DD HH:mm:ss', // 指定日志文件的时间格式 min_uptime: 1000, // 应用运行少于时间被认为是异常启动 max_restarts: 30, // 最大异常重启次数,即小于min_uptime运行时间重启次数; autorestart: true, // 默认为true, 发生异常的情况下自动重启 cron_restart: '', // crontab时间格式重启应用,目前只支持cluster模式; restart_delay: 60, // 异常重启情况下,延时重启时间 watch: true, // 是否监听文件变动然后重启 // exec_interpreter: "babel-node", //此配置就是使用babel-node去执行nodejs文件 ignore_watch: [ // 不用监听的文件 'node_modules', 'logs', 'news', 'run', 'test', 'typings', 'public', 'pm2.config' ], // 使用 process.env.NODE_ENV env: { NODE_ENV: 'development' }, env_production: { NODE_ENV: 'production' } } ] };