From 4f9d3c016c78a42b37b8789a02974b40db2b13b5 Mon Sep 17 00:00:00 2001 From: xyy <544939200@qq.com> Date: Thu, 19 Mar 2026 10:10:21 +0800 Subject: [PATCH] Update Dockerfile with server configuration --- PetWash.Api/Dockerfile | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/PetWash.Api/Dockerfile b/PetWash.Api/Dockerfile index a26578f..b513e87 100644 --- a/PetWash.Api/Dockerfile +++ b/PetWash.Api/Dockerfile @@ -1,30 +1,26 @@ -# 使用 .NET 8.0 SDK 作为构建镜像 +# 构建阶段 FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src # 复制项目文件并还原依赖 -COPY ["PetWash.Api/PetWash.Api.csproj", "PetWash.Api/"] -RUN dotnet restore "PetWash.Api/PetWash.Api.csproj" +COPY ["PetWash.Api.csproj", "."] +RUN dotnet restore -# 复制所有文件并构建 +# 复制所有源代码并发布 COPY . . -WORKDIR "/src/PetWash.Api" -RUN dotnet build "PetWash.Api.csproj" -c Release -o /app/build +RUN dotnet publish -c Release -o /app -# 发布应用 -FROM build AS publish -RUN dotnet publish "PetWash.Api.csproj" -c Release -o /app/publish /p:UseAppHost=false - -# 使用运行时镜像 -FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS final +# 运行时阶段 +FROM mcr.microsoft.com/dotnet/aspnet:8.0 WORKDIR /app EXPOSE 80 EXPOSE 443 -# 复制发布的文件 -COPY --from=publish /app/publish . +# 复制发布文件 +COPY --from=build /app . # 设置环境变量 +ENV ASPNETCORE_ENVIRONMENT=Production ENV ASPNETCORE_URLS=http://+:80 ENTRYPOINT ["dotnet", "PetWash.Api.dll"]