gpt4 book ai didi

node.js - 为开发和生产设置不同变量的最佳实践

转载 作者:行者123 更新时间:2023-12-05 00:43:56 24 4
gpt4 key购买 nike

我正在开发一个用node、hapijs、nodemon等制作的小服务器。
这是一个基本的 api 休息,将随着正在进行的开发而增长。

我需要为 dev 设置不同的变量。和生产。我实际上只有一个 .env 文件。我读过不建议为此使用 2 个单独的文件。

我应该如何修改我的 app.js 有两种情况?

  1. 在我的电脑上本地运行 nodemon 而在 dev 和本地变量中
  2. 部署到 Heroku 时,使用生产变量

非常感谢,

最佳答案

您可能已经这样做了。编写代码以使用环境变量。 (无论您是在本地运行还是在生产环境中运行,都是相同的代码。)。

const ACCESS_KEY = process.env.ACCESS_KEY;

您的 .env 文件只包含您的本地设置,以便在本地计算机上进行调试。您可以在 .gitignore 文件中添加 .env 以确保它不会被推送到您的 git 存储库。

相比之下,生产设置根本不应该在任何文件中。它们只能在您的云提供商的设置中直接配置。

  • 如果您使用的是 Azure,它们应该位于 Azure Key Vault 中。
  • 如果您使用 AWS,它们应该位于 AWS Parameter Store
  • 如果您使用的是 Heroku,那么它们应该在 Heroku 的设置中进行配置。

Heroku 设置

您可以通过 heroku 应用仪表板中的“设置”标签来执行此操作。有一个“配置变量”部分。

setup

heroku 启动应用程序时,会将配置的配置变量定义为环境变量。您将能够使用 process.env 访问它们,就像使用开发期间在 .env 文件中定义的环境变量一样。

命令行

仪表板可让您轻松获得概览和管理 key 。也许更方便的是,您也可以直接从命令行使用 heroku cli 工具 来执行此操作。

要获取当前环境变量的列表,请运行。

heroku config

从 CLI 添加新 key 。

heroku config:set ACCESS_KEY=adfsqfddqsdf

所有这些都在 official documentation 中有所描述。 Heroku。

关于node.js - 为开发和生产设置不同变量的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68639134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com