编辑后重新加载PM2配置文件时遇到问题:
{
"apps": [
...
{
"name": "foo",
"script": "foo/index.js",
"cwd": "foo",
"watch": false
}
]
}
我之前做过
pm2 restart config.json
和
pm2 reload config.json
和
pm2 gracefulReload config.json
但他们没有为现有应用重新加载配置(应用配置中的更改不适用)。对我有用的唯一方法是:
pm2 delete foo
pm2 restart config.json
这应该怎么做?
答案 0 :(得分:7)
如the reference所述,不再重新加载配置:
启动PM2 v2.1.X,默认情况下环境是不可变的,这意味着它们永远不会更新,除非你告诉PM2这样做,要更新配置,你需要使用--update-env选项。
所以这应该是
pm2 startOrReload config.js --update-env
答案 1 :(得分:0)
如果您将pm2
用于本地开发,并且在重新加载配置时遇到问题,则应运行:
$ pm2 delete ecosystem.config.js
这将删除现有服务(不用担心,不会删除任何文件)。然后重新加载配置运行:
$ pm2 start ecosystem.config.js
(提示:,您可能需要用配置文件名替换ecosystem.config.js
)
这是非常粗糙的重新加载方式,但是如果您想要一块干净的石板,则很好。解决某些问题非常有效,就像我使用node-config
一样-即使我在生态系统配置中添加了NODE_APP_INSTANCE
,我也收到了instance_var
警告。