我使用Docker Desktop for Windows和VS Tools for DockerStaging为我的 ASP.NET Core创建了配置。当我运行配置时,不断出现而不是.Stagingenv.EnvironmentNameProductionStaging
在文件docker-compose.dev.staging.yml中,我也将其设置ASPNETCORE_ENVIRONMENT为Staging。但这也无济于事。当然,我还需要把它放在其他地方,因为当我发布时我想Staging获得Staging EnvironmentName.
environment:
- ASPNETCORE_ENVIRONMENT=Staging
我错过了什么?
更新
所以,看起来Visual Studio Tools for Docker. 它不尊重配置设置并抓取文件docker-compose.dev.release.yml而不是docker-compose.dev.staging.yml. 因此,如果要将环境更改为staging. 因此,在调试时staging将以下内容添加到您的release文件中:
environment:
- ASPNETCORE_ENVIRONMENT=Staging
这个世界一切都会好起来的。docker-compose在部署到主文件时,您也需要这样做。烦人,但你还要做什么?
另外,添加图像名称,如:
image: docker.appcatalyst.com:5000/symptom_checker_pam_cms:staging
然后,您将获得staging部署到登台的标签。希望这个错误将很快得到修复。
更新 2
现在,我了解了 Docker 的工作原理。基本上你需要在docker-compose.yml文件中传递环境变量。因此,在运行您的环境的服务器上,staging您将添加我在上面放置的内容,然后docker up使用该 yaml 文件。至于在您自己的机器上,如果您想使用您的stage设置,您只需添加/删除(或注释掉)环境设置。有点痛。希望VS Tools for Docker修复此行为以进行调试。这将使编程稍微容易一些。