# Stage 1: Build FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build WORKDIR /app COPY ["../nuget.config", "./"] COPY ["../Shop/Shop.csproj", "Shop/"] RUN dotnet restore "Shop/Shop.csproj" --configfile nuget.config COPY . . RUN dotnet publish "../Shop/Shop.csproj" -c Release -o /app/publish /p:UseAppHost=false # Stage 2: Final Image FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS final WORKDIR /app RUN addgroup --system --gid 1000 appgroup && \ adduser --system --uid 1000 --ingroup appgroup appuser EXPOSE 8080 EXPOSE 8081 COPY --from=build /app/publish . RUN chown -R appuser:appgroup /app USER appuser ENTRYPOINT ["dotnet", "Shop.dll"]