首页 > 解决方案 > NodeJs .env 文件中的 Linux 环境变量

问题描述

我目前在我的 nodejs 项目和 reactjs 项目中使用 dotenv 库。

我有一个 .env 文件,当我有如下值时,它可以完美运行

PORT=80
API_URL=https://api.com:8080

但是,我正在尝试使我的 os 环境变量在此文件中可用,例如,如果我的 .bashrc 文件中有以下内容:

DATABASE_HOST=localhost
DATABASE_PASSWORD=password

是否可以在 .env 文件中打印 os 环境变量?类似于 Spring boot application.properties 文件的东西

NODEJS_DB_HOST=${DATABASE_HOST}

任何帮助表示赞赏

标签: node.jslinuxspring-bootenvironment-variablesdotenv

解决方案


我不认为 dotenv 让你这样做。

如果您查看dotenv 的 main.js 文件,它似乎只是根据 .env 文件中的字符串值填充 process.env。它不会查找这些字符串值以查看它们是否在您的操作系统环境中定义。

您最好的选择可能是只维护一个 .env 文件,或者通过命令行传递环境变量 - Twilio 有一个很好的例子来说明这一点


推荐阅读