在 AKS 中运行 ASP.NET 8 容器时的 HTTP_PORTS

Fra*_*ron 7 asp.net azure-aks .net-8.0

在 ASP.NET 8 容器的日志中,我找到了此条目

[22:38:50 WRN] Overriding HTTP_PORTS '8080' and HTTPS_PORTS ''. Binding to values defined by URLS instead 'http://+:80'. # {"EventId": {"Id": 15}, "SourceContext": "Microsoft.AspNetCore.Hosting.Diagnostics"}
Run Code Online (Sandbox Code Playgroud)

我不明白 HTTP_PORTS 设置来自哪里,因为我能想到的配置源都没有设置它。

Fab*_*des 6

此设置来自原始图像,可以在检查图像时查看,如下示例:

"Env": [
            "DOTNET_USE_POLLING_FILE_WATCHER=1",
            "ASPNETCORE_ENVIRONMENT=Development",
            "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
            "APP_UID=1654",
            "ASPNETCORE_HTTP_PORTS=8080",
            "DOTNET_RUNNING_IN_CONTAINER=true",
            "DOTNET_VERSION=8.0.0-rc.2.23479.6",
            "ASPNET_VERSION=8.0.0-rc.2.23480.2",
            "ASPNETCORE_URLS=http://+:5099"
        ], 
Run Code Online (Sandbox Code Playgroud)

为了避免此警告,您可以设置环境变量 ASPNETCORE_HTTP_PORTS,并在 Dockerfile 文件中注释“ENV ASPNETCORE_URLS”行,然后重新创建映像。

#ENV ASPNETCORE_URLS=http://+:5099
ENV ASPNETCORE_HTTP_PORTS=5099
Run Code Online (Sandbox Code Playgroud)

我希望它对你有帮助。