启动PM2时,从dotenv文件加载变量

前端之家收集整理的这篇文章主要介绍了启动PM2时,从dotenv文件加载变量 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我通过PM2将我的应用程序实例作为package.json脚本启动:

"start:pm2": "pm2 start -i max node myapp.js"

我发现,并非团队中的所有成员在开发时都总是希望使用max作为实例数的值,而是更喜欢使用较低的值.

为了不更改package.json,我最好让他们更改.env文件中的值,因为我们已经使用过它,因此来自它的值将用作pm2的参数.

我知道我可以创建一个包装器js或bash脚本来从.env文件中加载变量并将其传递给pm2,但最好是没有它的解决方案.

我该如何实现?

最佳答案
更好的方法是从代码删除dotenv并在命令行上“要求”它.这使您的代码可以在任何环境(包括基于云的环境)之间很好地传输-这是环境变量的主要功能之一.

a)在脚本旁边编码.env文件(例如app.js)

b)在没有pm2的情况下运行脚本:

node -r dotenv/config app.js

c)在pm2.config.js中:

module.exports = {
  apps : [{
    name      : 'My Application',script    : 'app.js',node_args : dotenv/config',...
  }],}

接着
    pm2启动pm2.config.js

注意:在命令行上使用dotenv / config是dotenv自己推荐的最佳实践之一

猜你在找的JavaScript相关文章