我将我的应用程序迁移到 .NET 8.0,在本地运行它并且运行良好。
然后我创建了一个图像,即容器。结果,之前正常工作的页面现在返回“1.2.3.4 拒绝连接”。
之前,当我使用 .NET 7.0 时,API 可以工作。
我的基本 DockerFile
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env
WORKDIR /app
COPY *.csproj ./
RUN dotnet restore
COPY . ./
RUN dotnet publish -c Release -o out
FROM mcr.microsoft.com/dotnet/aspnet:8.0
WORKDIR /app
RUN chmod -R 755 /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "myapi.dll"]
Run Code Online (Sandbox Code Playgroud)
我的 api 在端口 8860 上运行
49de1a3ce47c myapi "dotnet myapi.dll" 13 minutes ago Up 13 minutes 0.0.0.0:8860->80/tcp, :::8860->80/tcp
Run Code Online (Sandbox Code Playgroud)
日志:
info: Microsoft.Hosting.Lifetime[14]
Now listening on: http://[::]:8080
info: Microsoft.Hosting.Lifetime[0]
Application started. Press Ctrl+C …Run Code Online (Sandbox Code Playgroud)