一个 .net core 7.0 的 dockerfile 示例

以下是一个示例的Dockerfile,用于构建.NET Core 7.0应用程序的容器:

# 设置基础镜像
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build-env
WORKDIR /app

# 复制应用程序项目并生成
COPY *.csproj ./
RUN dotnet restore
COPY . ./
RUN dotnet publish -c Release -o out

# 使用最新的microsoft/dotnet镜像
FROM mcr.microsoft.com/dotnet/aspnet:7.0
WORKDIR /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "MyApp.dll"]

Dockerfile将基础镜像设置为.NET Core 7.0 SDK,并在其中构建应用程序。然后它使用最新的.NET Core 7.0运行时映像作为基础镜像。最后,将生成的应用程序复制到容器中并设置entrypoint以运行该应用程序。