节点环境值不会通过进程管理器命令更改

时间:2018-11-30 15:20:50

标签: node.js pm2

我正在写NODE_ENV=production pm2 start app以使节点环境进入生产模式。但是以某种方式,当我使用app.get('env')提取值时,它仅给我带来开发价值。那么,应该插入什么才能将节点环境运行到生产模式?

1 个答案:

答案 0 :(得分:1)

默认情况下,我们希望PM2在重新启动或重新加载时不更改过程环境。因此,为了更改进程的ENV值,仅停止和启动将不起作用。

您必须进行DELETE流程然后重新开始(我主要这样做是因为当我更改环境时,内部发生了一些重大变化,因此该方法对我有效)

pm2 delete app
NODE_ENV=prod pm2 start app

或者,从Doc“如果要更新它们[在重新启动/重新加载进程的同时],则必须使用--update-env”:

  

您想向进程中注入新的环境变量(对于   示例调试):使用DEBUG=* pm2 reload myapp --update-env