.net 无法从Mac上的主机连接到docker容器

.net 无法从Mac上的主机连接到docker容器,.net,docker,asp.net-core,.net,Docker,Asp.net Core,我希望我的ASP.NET核心web应用程序托管在docker容器中,侦听端口80。到目前为止,我的项目有以下Dockerfile: FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env WORKDIR /app COPY . ./ RUN dotnet publish PROJECT_NAME -c Release -o out FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 WORKDIR

我希望我的ASP.NET核心web应用程序托管在docker容器中,侦听端口80。到目前为止,我的项目有以下Dockerfile:

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env
WORKDIR /app

COPY . ./
RUN dotnet publish PROJECT_NAME -c Release -o out

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
WORKDIR /app
COPY --from=build-env /app/out .
EXPOSE 80
ENTRYPOINT ["dotnet", "PROJECT_NAME.dll"]
我塑造自己的形象:

docker build -t IMAGE_TAG -f PROJECT_NAME/Dockerfile .
然后我运行我的容器:

docker run IMAGE_TAG -p 80:80
控制台日志显示它正在运行:

[18:54:34 INF] Starting web host.
[18:54:34 INF] Now listening on: http://[::]:80
[18:54:34 INF] Application started. Press Ctrl+C to shut down.
[18:54:34 INF] Hosting environment: Production
[18:54:34 INF] Content root path: /app
我的web应用程序有一个健康检查端点/api/health,它只返回“health”以显示一切正常

但是,当我进入浏览器并输入以下任何一项时,什么都不会发生:


这是我第一次和docker鬼混,所以我可能错过了一些明显的东西。你有什么想法吗?

如果
Dockerfile
让程序在
127.0.0.1
上运行,尝试将其设置为在
0.0.0
上运行。如果
Dockerfile
让程序在
127.0.0.1
上运行,尝试将其设置为在
0.0.0
上运行。