重新加载 PM2 配置文件
Reload PM2 configuration file
编辑后重新加载 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
这应该如何完成?
如the reference所述,不再重新加载配置:
Starting PM2 v2.1.X, environnements are immutable by default, that means they will never be updated unless you tell PM2 to do so, to update configurations, you will need to use --update-env options.
所以这应该是
pm2 startOrReload config.js --update-env
如果您使用 pm2
进行 本地开发 并且在重新加载配置时遇到问题,您应该 运行:
$ pm2 delete ecosystem.config.js
这会删除现有服务(不用担心,不会删除任何文件)。然后重新加载配置 运行:
$ pm2 start ecosystem.config.js
(提示: 您可能需要将 ecosystem.config.js
替换为您的配置文件名)
这是一种非常粗糙的重新加载方式,但如果您想要一个干净的状态,这很好。它可以有效地解决一些问题,就像我遇到的 node-config
- 我收到 NODE_APP_INSTANCE
警告,即使我将 instance_var
添加到我的生态系统配置中。
编辑后重新加载 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
这应该如何完成?
如the reference所述,不再重新加载配置:
Starting PM2 v2.1.X, environnements are immutable by default, that means they will never be updated unless you tell PM2 to do so, to update configurations, you will need to use --update-env options.
所以这应该是
pm2 startOrReload config.js --update-env
如果您使用 pm2
进行 本地开发 并且在重新加载配置时遇到问题,您应该 运行:
$ pm2 delete ecosystem.config.js
这会删除现有服务(不用担心,不会删除任何文件)。然后重新加载配置 运行:
$ pm2 start ecosystem.config.js
(提示: 您可能需要将 ecosystem.config.js
替换为您的配置文件名)
这是一种非常粗糙的重新加载方式,但如果您想要一个干净的状态,这很好。它可以有效地解决一些问题,就像我遇到的 node-config
- 我收到 NODE_APP_INSTANCE
警告,即使我将 instance_var
添加到我的生态系统配置中。