容器的Azure Web App未设置环境变量

时间:2018-09-19 07:17:23

标签: node.js azure docker azure-devops azure-container-registry

我有一个从Azure Container Registry部署的docker映像。一切正常,除了我希望能够  查看从门户中配置的“应用程序设置”传递到正在运行的docker映像的环境变量。这是一个Node应用,使用process.env.VariableName访问环境变量。

作为一个例子,它在这里说 https://blogs.msdn.microsoft.com/waws/2017/09/08/things-you-should-know-web-apps-and-linux/#SetEnvVar…  “应用设置会在运行时作为环境变量注入到您的应用中”

我尝试了以下方法。

  • 在Azure门户中设置应用程序设置。这些应该按照文档传递给正在运行的Docker映像,但是未设置我的Node应用程序中的process.env.VariableName。

  • 我尝试使用设置环境变量的Docker组合文件,但process.env.VariableName再次为空。

  • 我什至更新了VSTS构建参数,将变量传递给构建时的Docker文件,该文件又设置了环境变量。同样,没有任何变量传递给正在运行的Docker映像。

我的结论是,容器的Azure Web App中不允许使用自定义环境变量吗?

我做错什么了吗?

1 个答案:

答案 0 :(得分:0)

根据 documentation,应用设置作为环境变量注入到进程中,但是环境变量名称以 APPSETTING_ 为前缀,因此在您的 Node 应用程序中,您需要访问应用设置与process.env.APPSETTING_VariableName