PM2使用配置文件无法启动对应CPU核心数的实例问题
PM2配置文件只启动1个实例的原因及解决办法
你遇到的问题核心原因是把PM2的核心运行配置项放到了env_production环境变量区块里。
env_production这个节点仅用于定义当前应用在production环境下的环境变量(比如NODE_ENV),PM2不会从这个区块里读取instances、exec_mode、watch这类控制应用运行模式的核心配置。这些配置项必须直接放在app对象的根层级,才能被PM2正确识别。
修改后的配置文件应该是这样:
module.exports = { apps: [ { name: 'server_from_config', script: './build/server.js', // 核心配置移到根层级 watch: true, instances: 'max', exec_mode: 'cluster', env_production: { NODE_ENV: 'production' }, }, ], };
如果需要以production环境启动,执行命令:pm2 start ecosystem.config.js --env production,此时env_production里的环境变量会生效,同时核心配置也能正常起作用,实例数量会自动匹配CPU核心数。
内容的提问来源于stack exchange,提问作者Mike K
相关产品推荐
相关产品推荐

