FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build WORKDIR /source COPY Directory.Build.props TrainingPlanner.slnx ./ COPY src/TrainingPlanner.Domain/TrainingPlanner.Domain.csproj src/TrainingPlanner.Domain/ COPY src/TrainingPlanner.Application/TrainingPlanner.Application.csproj src/TrainingPlanner.Application/ COPY src/TrainingPlanner.Infrastructure/TrainingPlanner.Infrastructure.csproj src/TrainingPlanner.Infrastructure/ COPY src/TrainingPlanner.Web/TrainingPlanner.Web.csproj src/TrainingPlanner.Web/ RUN dotnet restore src/TrainingPlanner.Web/TrainingPlanner.Web.csproj COPY src/ src/ RUN dotnet publish src/TrainingPlanner.Web -c Release -o /app --no-restore RUN test -f /app/wwwroot/_framework/blazor.web.js FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS runtime RUN apt-get update && apt-get install -y --no-install-recommends fonts-dejavu-core libgssapi-krb5-2 && rm -rf /var/lib/apt/lists/* WORKDIR /app RUN mkdir -p /app/keys && chown $APP_UID /app/keys COPY --from=build /app ./ USER $APP_UID ENTRYPOINT ["dotnet", "TrainingPlanner.Web.dll"]