【发布时间】:2018-01-24 19:44:01
【问题描述】:
我一直在尝试为本地和生产网络应用程序提供不同环境变量的简化方法,但我还没有遇到“理想”的解决方案。
有一个像这样的 config.js 文件的选项:
//config.js
{
"secretKey": "SDFDASFFSFD",
"facebook": {
"clientID": "EFGFDGBGDGFS",
"clientSecret": "EGDFNHFG"
}
}
通过 ES6 导入访问
或者像这样使用 .env 文件:
SOME_KEY=someValue
HELLO=world
FACEBOOK_SECRET=435SDFSF5DZVD7S
并使用 dotenv 在代码中通过 process.env 访问变量。
显然,无论您走哪条路线,都需要从版本控制中省略该文件,这很好。这些方法中的每一种都很棒,但它们似乎只对本地发展有效。
那么,如何为生产环境创建一个单独的文件? dotenv 文档说他们强烈建议不要使用 .local.env 和 .prod.env 情况。
另外,如何最好地推送到远程服务器?我有自己的服务器,其中包含在 Git 接收后挂钩上运行的 Gulp 任务。如何最好将生产环境变量传递到这里?
谢谢
【问题讨论】:
标签: node.js git environment-variables