From c2a76ed51aa6289270532bd47677b1f760f57fd9 Mon Sep 17 00:00:00 2001 From: musselman Date: Tue, 21 Nov 2023 12:45:52 -0600 Subject: [PATCH] Update Dockerfile with custom base image and add healthcheck - Update base image to `docker.io/library/alpine:3.18.4` to ensure the latest version is used. - Set the user in the container to `notatio` for security purposes. - Add a healthcheck to monitor the app's availability. - Modify the `ENTRYPOINT` to delay the execution by 10 seconds before starting the application. --- Dockerfile | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7867820..e86610c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,7 +14,8 @@ COPY . ./ RUN go build -o /notatio # Stage 2: Create the final image -FROM alpine +FROM docker.io/library/alpine:3.18.4 +USER notatio WORKDIR / COPY --from=builder /notatio . @@ -25,5 +26,8 @@ COPY --from=builder /build/static/ static/ COPY --from=builder /build/wait-for-postgres.sh ./wait-for-postgres.sh EXPOSE 9991 -CMD ["./notatio"] +ENTRYPOINT ["sh", "-c", "sleep 10 && ./notatio"] LABEL name=notatio version=latest + +HEALTHCHECK --interval=5m --timeout=3s \ + CMD curl -f http://localhost/ || exit 1 \ No newline at end of file