Update Dockerfile with server configuration

This commit is contained in:
xyy
2026-03-19 10:10:21 +08:00
parent 65f4fa02ca
commit 4f9d3c016c

View File

@@ -1,30 +1,26 @@
# 使用 .NET 8.0 SDK 作为构建镜像 # 构建阶段
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src WORKDIR /src
# 复制项目文件并还原依赖 # 复制项目文件并还原依赖
COPY ["PetWash.Api/PetWash.Api.csproj", "PetWash.Api/"] COPY ["PetWash.Api.csproj", "."]
RUN dotnet restore "PetWash.Api/PetWash.Api.csproj" RUN dotnet restore
# 复制所有文件并构建 # 复制所有源代码并发布
COPY . . COPY . .
WORKDIR "/src/PetWash.Api" RUN dotnet publish -c Release -o /app
RUN dotnet build "PetWash.Api.csproj" -c Release -o /app/build
# 发布应用 # 运行时阶段
FROM build AS publish FROM mcr.microsoft.com/dotnet/aspnet:8.0
RUN dotnet publish "PetWash.Api.csproj" -c Release -o /app/publish /p:UseAppHost=false
# 使用运行时镜像
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS final
WORKDIR /app WORKDIR /app
EXPOSE 80 EXPOSE 80
EXPOSE 443 EXPOSE 443
# 复制发布文件 # 复制发布文件
COPY --from=publish /app/publish . COPY --from=build /app .
# 设置环境变量 # 设置环境变量
ENV ASPNETCORE_ENVIRONMENT=Production
ENV ASPNETCORE_URLS=http://+:80 ENV ASPNETCORE_URLS=http://+:80
ENTRYPOINT ["dotnet", "PetWash.Api.dll"] ENTRYPOINT ["dotnet", "PetWash.Api.dll"]