【发布时间】:2019-04-17 16:13:48
【问题描述】:
我有一个 React 应用程序 (CRA),它将在 docker 容器中运行,我将为其设置环境变量“API_KEY”=“some_value”。对于 windows 的示例,这是系统属性 -> 环境变量 -> 系统变量 -> 变量 = "API_KEY" 和值 = "some_value"。
我想在运行时访问以将此变量导入应用程序。这是用于 Azure App Insights 的 API_KEY。
以上链接显示<your instrumentation key>。我将把同一个应用程序部署到多个环境中。应用程序的每个实例都需要使用其特定的 App Insights。所以这里的目标是在环境变量中指定 API_KEY,这对于每个 docker 容器都是不同的。
请注意,我知道 nodeJs 和 process.env.API_KEY 但这不是从系统环境变量中读取的。有没有办法让系统变量链接到节点实例的 process.env?
-PS 这个请求是针对需要立即触发的 API 服务的。因此,发出 API 请求来获取它是不可能的。它将向最终客户端公开,因为它正在为每个客户端记录 JavaScript 事件。
【问题讨论】:
-
Docker 本质上是与主机系统隔离的。你需要pass your environment variables into the container at runtime。