编辑 - 事实证明我有一个隐藏的覆盖yaml文件,它将变量设置回开发。我没有意识到它是在那里,直到我开始工作,偶然我的视觉工作室将设置显示所有文件,但由于某种原因不在我的家庭盒子上。我从来没有在同一时间感到沮丧和放松。
我目前有一个测试应用程序,我在linux上的docker容器中运行。 尽管将compose文件中的环境变量设置为Production, 它在开发环境中运行。 这是yaml文件。
版本:'3'
服务: 模板: 图像:模板 container_name:template 建立: 背景:。 dockerfile:模板/ Dockerfile 暴露: - “80” 重启:除非停止
environment:
- ASPNETCORE_ENVIRONMENT="Production"
网络: 默认: 外部: 名称:redroom
当我启动它并转到网站时。
我正在使用包含以下代码的索引页进行测试。
<environment include="Staging">
<p>Staging</p>
</environment>
<environment include="Production">
<p>Production</p>
</environment>
<environment include="Development">
<p>Development</p>
</environment>
无论我做什么,我总是看到“发展”。 我可以在我的Windows开发盒上更改环境变量,这一切都按预期工作,但我不能为我的生活弄清楚如何让这个应用程序在linux上的docker容器中作为“Production”运行。
这是所有docker文件的pastbin。 https://pastebin.com/FeYqxuL1