我正在生产环境中的具有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的项目中使用它们时,它们显示为未定义
为什么?
答案 0 :(得分:1)
当您在节点中手动设置环境变量时,它们仅会保留在该节点的实例上,因为您是在内存中而不是磁盘上设置它们。如果您希望在进程之间共享它们,则一种方法是使用Iggnaxios指出的dotenv,在所有应用程序中,并在每个应用程序的.env
文件中使用相同的变量,或者使用它们所有人都使用相同的.env
文件。
节点还将从您的操作系统中提取环境变量。有关如何在Linux中设置环境变量的信息,请参见How to permanently export a variable in Linux?
答案 1 :(得分:-1)
要使用环境变量,必须安装dotenv库