我如何在nodejs中保留环境变量?

时间:2020-04-12 07:18:46

标签: node.js

我正在生产环境中的具有Linux的vps。我有一个文件尝试设置环境变量。 我的变量在一个名为environment.js的文件中。

我的文件内容如下:

process.env.NODE_ENV = "prod";
console.log(process.env.NODE_ENV);
process.env.SEED = "seed";
console.log(process.env.SEED);
process.env.SEED_PORTAL = "seed_bee"
console.log(process.env.SEED_PORTAL);
process.env.HOST = "http://3.86.232.97";

然后我跑步

node environment.js

,我希望这些值能够持久存在,但是这些变量不是全局变量,在其他尝试使用nodejs的项目中使用它们时,它们显示为未定义

为什么?

2 个答案:

答案 0 :(得分:1)

当您在节点中手动设置环境变量时,它们仅会保留在该节点的实例上,因为您是在内存中而不是磁盘上设置它们。如果您希望在进程之间共享它们,则一种方法是使用Iggnaxios指出的dotenv,在所有应用程序中,并在每个应用程序的.env文件中使用相同的变量,或者使用它们所有人都使用相同的.env文件。

节点还将从您的操作系统中提取环境变量。有关如何在Linux中设置环境变量的信息,请参见How to permanently export a variable in Linux?

答案 1 :(得分:-1)

要使用环境变量,必须安装dotenv