FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS base WORKDIR /app EXPOSE 8080 FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:10.0 AS build ARG TARGETARCH WORKDIR /app COPY . . RUN dotnet restore WORKDIR "/app/Azaion.AdminApi" RUN dotnet build "Azaion.AdminApi.csproj" -c Release -o /app/build FROM build AS publish RUN arch=$([ "$TARGETARCH" = "amd64" ] && echo "x64" || echo "$TARGETARCH") && \ dotnet publish "Azaion.AdminApi.csproj" -c Release -o /app/publish /p:UseAppHost=false --os linux --arch $arch # Build runtime FROM base AS final ARG CI_COMMIT_SHA=unknown ENV AZAION_REVISION=$CI_COMMIT_SHA WORKDIR /app COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "Azaion.AdminApi.dll"]