繁体   English   中英

如何在 ASP.NET Core 3.1 中使用 Visual Studio 2019 在 docker 中设置环境?

[英]How to set the environment in a docker with Visual Studio 2019 in ASP.NET Core 3.1?

在 ASP.NET Core 3.1(Win10 与 Docker 桌面)中的 Visual Studio 2019 中苦苦挣扎。 我只想将“ASPNETCORE_ENVIRONMENT”从“开发”更改为“生产”。

所以我所做的就是编辑launchSettings.json

并编辑环境变量部分:

"profiles": {

   ///cut other

   "Docker": {
        "commandName": "Docker",
        "launchBrowser": true,
        "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/version",
        "environmentVariables": {
           "ASPNETCORE_ENVIRONMENT": "Production",
           },

        "publishAllPorts": true,
        "useSSL": false
   }
 }

然后当我在 Visual Studio 中开始调试时,我得到:“无法配置 HTTPS 端点”,除非它与“开发”一起工作正常。 尽管如此, docker中的容器仍显示“开发”

在此处输入图像描述

然后当我添加"ASPNETCORE_URLS": "http://+:80"容器启动但仍显示 ASPNETCORE_ENVIRONMENT = Development。 执行“ENV”时也在 docker 内部。

真的不知道,还有什么我可以尝试的。

希望得到您的指导。

提前致谢。

您会发现这个问题很有帮助: Docker 中的 ASPNETCORE_ENVIRONMENT

那里提出的解决方案 - 在 Dockerfile 的 ENTRYPOINT 中指定环境: ENTRYPOINT ["dotnet", "CoreDocker.dll", "--environment=Production"]

也许它是一个 UI 错误,你可以检查

Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");

就我而言,应用程序显示“生产”,但 Visual Studio 容器调试工具显示“开发”。

此外,您可以添加一个“appsetting.Production.json”来仔细检查配置是否更改为生产,希望对您有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM