ARG BUILD_PATH_ARG=/build FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build ENV SOURCE_PATH=/source ARG BUILD_PATH_ARG ENV BUILD_PATH=${BUILD_PATH_ARG} ADD ./src ${SOURCE_PATH} WORKDIR ${SOURCE_PATH} RUN dotnet publish HttpApi \ --output ${BUILD_PATH} --no-self-contained \ -p:PublishSingleFile=true -p:IsAotCompatible=true RUN rm -Rf ${BUILD_PATH}/*pdb FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS runtime ARG BUILD_PATH_ARG ENV BUILD_PATH=${BUILD_PATH_ARG} ARG APP_PATH_ARG=/app ENV APP_PATH=${APP_PATH_ARG} WORKDIR ${APP_PATH} COPY --from=build ${BUILD_PATH} . EXPOSE 8080/tcp HEALTHCHECK CMD curl --fail http://localhost:8080/health || exit ENTRYPOINT ${APP_PATH}/HttpApi