【发布时间】:2020-09-16 18:46:34
【问题描述】:
我们有 aspnet core 2.1 应用程序,我们正在使用 Azure Pipeline 来构建和发布该应用程序。
我们正在使用 docker build 在构建管道中构建镜像,并在发布管道中将应用程序部署到 Kubernetes。
现在我们想构建一次映像,然后分 3 个阶段(开发、暂存和生产)将映像部署到 Kubernetes。
我们使用 ASPNETCORE_ENVIRONMENT 环境变量来区分阶段。我们尝试在 DockerFile 和 Kubernetes deployment.azure.yaml 文件中使用这个变量。另外,我们在应用的launchsettings.json中配置了Docker Profile。
“Docker”: {
“commandName”: “Docker”,
“environmentVariables”: {
“ASPNETCORE_ENVIRONMENT”: “”,
“ASPNETCORE_URLS”: “”,
“DOTNET_ENVIRONMENT”: “Staging”
}
},
但是,环境变量仍然没有按预期工作。每次我们将应用程序部署到 Kubernetes 时,它都会使用 Development 变量。
请提出更好的计划或更改以实现“一次构建,到处部署”策略。
谢谢, 穆格什
【问题讨论】:
-
以下回复你看了吗?有用吗?
标签: azure-pipelines