FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS base WORKDIR /app # Muss exakt zu global.json (rollForward: latestPatch) passen - der treibende ":10.0"-Tag zeigt # irgendwann auf ein neueres Feature-Band (z.B. 10.0.400), das latestPatch nicht akzeptiert und # den Build mit "A compatible .NET SDK was not found" abbrechen lässt. FROM mcr.microsoft.com/dotnet/sdk:10.0.301 AS build WORKDIR /src COPY ["LehrerApp.Api/LehrerApp.Api.csproj", "LehrerApp.Api/"] COPY ["LehrerApp.Sync/LehrerApp.Sync.csproj", "LehrerApp.Sync/"] COPY ["LehrerApp.Core/LehrerApp.Core.csproj", "LehrerApp.Core/"] COPY ["LehrerApp.Data/LehrerApp.Data.csproj", "LehrerApp.Data/"] COPY ["Directory.Build.props", "."] COPY ["Directory.Packages.props", "."] RUN dotnet restore "LehrerApp.Api/LehrerApp.Api.csproj" COPY . . RUN dotnet publish "LehrerApp.Api/LehrerApp.Api.csproj" -c Release -o /app/publish FROM base AS final COPY --from=build /app/publish . RUN mkdir -p /app/data ENTRYPOINT ["dotnet", "LehrerApp.Api.dll"]