教程

无处不在的集成

运行 dotenv-vault build

打开终端,进入您的项目根目录(包含您的 .env.vault 文件的位置),然后运行 dotenv-vault build。

$ npx dotenv-vault build

您的 .env.vault 文件现在应该类似于以下内容。

DOTENV_VAULT=vlt_509ada...
DOTENV_VAULT_DEVELOPMENT="Z53YGRqDcfkQZ..."
DOTENV_VAULT_CI="Ib3n/NKbTVO..."
DOTENV_VAULT_STAGING="up1/d3F13uCKrbsU..."
DOTENV_VAULT_PRODUCTION="oJ6qWV1erwlU1TP4..."

如您所见,您的环境变量已按环境加密。

设置 DOTENV_KEY

DOTENV_KEY 用于解密来自 DOTENV_VAULT_PRODUCTION 的加密值。运行 dotenv-vault keys production。

$ npx dotenv-vault keys production

这将输出您的 DOTENV_KEY。

dotenv://:[email protected]/vault/.env.vault?environment=production

在您的基础设施上设置 DOTENV_KEY。例如,在 Heroku 上

$ heroku config:set DOTENV_KEY='dotenv://:[email protected]/vault/.env.vault?environment=production'

需要 dotenv >= 16.1.0

最后一步是将 dotenv >= 16.1.0 导入到您的代码中。

尽早地在您的应用程序中导入并配置 dotenv

require('dotenv').config()
console.log(process.env) // remove this after you've confirmed it working

注意:还支持其他语言,如 Ruby、Python、PHP 等.

就是这样!

当您的应用程序启动时,它将识别 DOTENV_KEY,解密 .env.vault 文件,并将变量加载到 ENV 中。如果未设置 DOTENV_KEY(例如,在本地机器上进行开发时),它将回退到常规的 dotenv。