.net core 3.1应用程序不会通过docker在浏览器上运行

.net core 3.1应用程序不会通过docker在浏览器上运行,docker,dockerfile,.net-core-3.1,Docker,Dockerfile,.net Core 3.1,我从VisualStudio创建了两个默认项目(WebAPI),一个使用.NETCore2.1,另一个使用.NETCore3.1!使用visual studio为两者生成DockerFile dockerfile对于这两个方面来说都像是贝娄 #See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debug

我从VisualStudio创建了两个默认项目(WebAPI),一个使用.NETCore2.1,另一个使用.NETCore3.1!使用visual studio为两者生成DockerFile

dockerfile对于这两个方面来说都像是贝娄

#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build 
your images for faster debugging.

FROM mcr.microsoft.com/dotnet/core/aspnet:2.1 AS base // version 3.1 for my other project
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM mcr.microsoft.com/dotnet/core/sdk:2.1 AS build // version 3.1 for my other project
WORKDIR /src
COPY ["WebApplication2.csproj", ""]
RUN dotnet restore "./WebApplication2.csproj"
COPY . .
WORKDIR "/src/."
RUN dotnet build "WebApplication2.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "WebApplication2.csproj" -c Release -o /app/publish

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "WebApplication2.dll"]
这是我的发射装置

       "applicationUrl": "http://localhost:80"
这些正是我用来构建和运行dockerfile的命令

  docker build -t mohammadjavani/app21 .
  docker run -p 8080:80 mohammadjavani/app21

  docker build -t mohammadjavani/app31 .
  docker run -p 8080:80 mohammadjavani/app31
运行app21后,我可以在localhost:80的浏览器中查看我的应用程序 但是,在我停止app21容器并运行app31之后,作为mohammadjavani/app31,我无法在brower中查看我的应用程序

DockerFile是在VisualStudio中生成的,我在这两个项目中使用的命令完全相同
我的.net core 3.1 dockerfile项目有什么问题

请尝试使用环境变量
ASPNETCORE\u url=“https://+:443;http://+:80”

docker run -p 8080:80 mohammadjavani/app31 -e ASPNETCORE_URLS="https://+:443;http://+:80"