我已经部署了this node app,并在NODE_ENV=production yarn start
上运行良好。
我可以使用以下方法妖魔化应用程序pm2 start npm -- start
但默认为NODE_ENV=development
配置。
当我使用pm2 start npm -- start NODE_ENV=production
它仍然以development
配置开始。
我还尝试使用process.yml
文件传递env
apps:
- script : index.js
watch: true
instances: 4
env :
NODE_ENV: production
但是pm2 start npm -- start process.yml
仍然加载开发配置。
我该怎么补救呢?
6条答案
按热度按时间ldfqzlk81#
您可能会遇到这种情况,因为您曾经使用
development
启动pm2
,现在它将使用该env,直到您使用kill
它。./node_modules/.bin/pm2 kill
NODE_ENV=production ./node_modules/.bin/pm2 start server.js
您也可以使用
--update-env
。从official docs默认情况下,我们希望PM2在重新启动或重新加载时不改变进程环境,这样它们是不可变的。如果你想更新它们,你必须使用--update-env:
mznpcxlj2#
试试这个:
sdnqo3pr3#
下面这行帮助了我!感谢#mehdi parastar和#abhinavd
tnkciper4#
试试这个,如果你使用的是pm2,下面的代码适合我
sudo NODE_ENV=生产pm2启动应用程序. js
f5emj3cl5#
您可以使用以下命令(带双引号)求解:
rkkpypqq6#
你只要这样做-〉
您可以在这里查看文档:PM2 - Update Env Variables docs