http-api/Dockerfile
2025-04-29 23:51:19 +03:00

42 lines
700 B
Docker

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