#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base WORKDIR /app EXPOSE 8686 EXPOSE 443 FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build WORKDIR /src COPY ["Modules/SettleAccount/nuget.config", "Modules/SettleAccount/"] COPY ["Modules/SettleAccount/host/SettleAccount.HttpApi.Host/SettleAccount.HttpApi.Host.csproj", "Modules/SettleAccount/host/SettleAccount.HttpApi.Host/"] COPY ["Modules/SettleAccount/src/SettleAccount.EntityFrameworkCore/SettleAccount.EntityFrameworkCore.csproj", "Modules/SettleAccount/src/SettleAccount.EntityFrameworkCore/"] COPY ["Shared/Win.Utils/Win.Utils.csproj", "Shared/Win.Utils/"] COPY ["Shared/Win.Sfs.Shared/Win.Sfs.Shared.csproj", "Shared/Win.Sfs.Shared/"] COPY ["Modules/SettleAccount/src/SettleAccount.Domain/SettleAccount.Domain.csproj", "Modules/SettleAccount/src/SettleAccount.Domain/"] COPY ["Modules/SettleAccount/src/SettleAccount.Domain.Shared/SettleAccount.Domain.Shared.csproj", "Modules/SettleAccount/src/SettleAccount.Domain.Shared/"] COPY ["Modules/SettleAccount/src/SettleAccount.Application/SettleAccount.Application.csproj", "Modules/SettleAccount/src/SettleAccount.Application/"] COPY ["Modules/SettleAccount/src/SettleAccount.Application.Contracts/SettleAccount.Application.Contracts.csproj", "Modules/SettleAccount/src/SettleAccount.Application.Contracts/"] COPY ["Shared/Win.Abp/Win.Abp.Snowflakes/Win.Abp.Snowflakes.csproj", "Shared/Win.Abp/Win.Abp.Snowflakes/"] COPY ["Modules/SettleAccount/src/SettleAccount.HttpApi/SettleAccount.HttpApi.csproj", "Modules/SettleAccount/src/SettleAccount.HttpApi/"] RUN dotnet restore "Modules/SettleAccount/host/SettleAccount.HttpApi.Host/SettleAccount.HttpApi.Host.csproj" COPY . . WORKDIR "/src/Modules/SettleAccount/host/SettleAccount.HttpApi.Host" RUN dotnet build "SettleAccount.HttpApi.Host.csproj" -c Release -o /app/build FROM build AS publish RUN dotnet publish "SettleAccount.HttpApi.Host.csproj" -c Release -o /app/publish FROM base AS final WORKDIR /app COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "SettleAccount.HttpApi.Host.dll"]