Docker-compose没有设置环境变量

时间:2018-09-02 09:11:54

标签: .net docker docker-compose docker-for-windows

我有一个带有launchSettings.json文件的项目,我们在其中指定了这样的环境:“ Environment”:“ Production”

当我使用docker-compose并设置环境时。变量为“开发”,则项目仍会选择“生产”。如果我删除launchSettings.json文件中的行,则该项目将选择正确的变量(在这种情况下为“开发”)。

我通过 dotnet run 在docker中运行项目,所以我的猜测是当我使用dotnet run时,启动设置会覆盖环境。变量。

是否有防止这种情况发生的方法? (也许发布程序包并直接运行dll?)

我只想使用docker-compose文件设置环境。变量

1 个答案:

答案 0 :(得分:3)

按照: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/environments?view=aspnetcore-2.1

  

可以在项目的Properties \ launchSettings.json文件中设置用于本地计算机开发的环境。在launchSettings.json中设置的环境值会覆盖在系统环境中设置的值。

在这篇文章中,它展示了许多方法,您可以指定当前正在哪个环境中运行。

https://andrewlock.net/how-to-set-the-hosting-environment-in-asp-net-core/