dotenvx
dotenvx
a better dotenv–from the creator of dotenv.
- run anywhere (cross-platform)
- multi-environment
- encrypted envs
Multiple Environments
Run any environment locally. Create a .env.ENVIRONMENT
file and use --env-file
to load it. It's straightforward, yet flexible.
-
--env-file
环境变量文件默认为 .env -
--env-file (multiple)
- dotenvx run --env-file=.env.local --env-file=.env -- node index.js
- 默认前一个 env 文件的环境变量优先级高于后一个,所以 .env.local 和 .env 中的环境变量重名时,.env.local 中的环境变量优先级更高,取其值。
-
--overload
手动设置后一个 env 文件的环境变量优先级高于前一个,允许重名覆盖dotenvx run --env-file=.env.local --env-file=.env --overload -- node index.js
-
--verbose
允许查看 env 简要解析过程 -
--debug
允许查看 env 详细解析过程(If you also want to see the secret value being set, use --debug.)
Encrypt Secrets 加密/解密环境变量
Encrypt your secrets to an encrypted .env.vault
and then load them securely (and just-in-time) to production, staging, or ci
-
Run
dotenvx encrypt
to encrypt your all.env.*
file(s) to .env.vault -
你的环境变量会被加密进 .env.vault 中
-
根据 .env.keys 中的
dotenv://:key_...
解密环境变量 -
command line:
DOTENV_KEY='dotenv://:key_10283719af6...' dotenvx run -- node index.js
Node - Express
Use dotenvx (as an npm module) with express.js.
-
npm 安装 dotenvx 依赖
- npm install express @dotenvx/dotenvx --save
-
配置 package.json "scripts" 字段
"scripts": { "start": "dotenvx run -- node index.js" }
-
npm run start 启动项目
文章参考: dotenvx