simplew.dockerfile 575 B

123456789101112131415161718192021222324
  1. FROM mcr.microsoft.com/dotnet/sdk:9.0-alpine AS build
  2. WORKDIR /source
  3. # copy csproj and restore as distinct layers
  4. COPY Benchmarks/*.csproj .
  5. RUN dotnet restore -r linux-musl-x64
  6. # copy and publish app and libraries
  7. COPY Benchmarks/ .
  8. RUN dotnet publish -c release -o /app -r linux-musl-x64 --no-restore --self-contained
  9. # final stage/image
  10. FROM mcr.microsoft.com/dotnet/runtime-deps:9.0-alpine
  11. ENV DOTNET_GCDynamicAdaptationMode=0
  12. ENV DOTNET_ReadyToRun=0
  13. ENV DOTNET_HillClimbing_Disable=1
  14. WORKDIR /app
  15. COPY --from=build /app .
  16. ENTRYPOINT ["./Benchmarks"]
  17. EXPOSE 8080