gpt4 book ai didi

node.js - 在node中使用系统环境变量/与docker react

转载 作者:行者123 更新时间:2023-12-02 21:12:53 27 4
gpt4 key购买 nike

我有一个React App(CRA),它将在docker容器中运行,我将为其设置环境变量“API_KEY” =“some_value”。对于Windows的示例,这是系统属性->环境变量->系统变量->变量=“API_KEY”和Value =“some_value”。

我想在运行时将此变量获取到应用程序中。这是用于Azure App Insights的API_KEY。

https://docs.microsoft.com/en-us/azure/application-insights/app-insights-javascript#add-the-sdk-script-to-your-app-or-web-pages

上面的链接显示了<your instrumentation key>。我将同一应用程序部署到多个环境。该应用程序的每个实例将需要使用其特定的App Insights。因此,这里的目标是在环境变量中指定API_KEY,这对于每个Docker容器而言都是不同的。

请注意,我知道nodeJs和process.env.API_KEY,但是这不会从系统环境变量中读取。有没有办法让系统变量链接到节点实例的process.env?

-PS此请求是针对需要立即启动的API服务的。因此提出一个API请求来解决这个问题是不可能的。它将在向每个客户端记录JavaScript事件时向最终客户端公开。

最佳答案

答案是不。您无法读取系统环境变量。但是,您可以在* .env文件中设置过程环境变量。就我而言,我将通过将由Dockerfile触发的shell脚本生成此env文件。然后,将针对以“REACT_APP_#”开头的环境变量删除该过程。

希望这对其他人有帮助。

  • 生成shell脚本
    https://medium.com/@vietgoeswest/passing-env-variables-from-the-server-to-your-create-react-app-c87578a45358
  • 使用CRA设置环境
    https://medium.com/@tacomanator/environments-with-create-react-app-7b645312c09d
  • Docker化Node.js Web应用程序
    https://nodejs.org/en/docs/guides/nodejs-docker-webapp/
  • 将环境变量从Docker传递到Node https://medium.com/@felipedutratine/pass-environment-variables-from-docker-to-my-nodejs-or-golang-app-a1f2ddec31f5
  • 也有帮助
    https://github.com/facebook/create-react-app/issues/982
  • 关于node.js - 在node中使用系统环境变量/与docker react ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53304553/

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