From 4dd17b7ac4217825e6b252ea863a7d53532a3ace Mon Sep 17 00:00:00 2001 From: Peter Meier Date: Mon, 11 May 2026 14:06:46 +0200 Subject: [PATCH] fix(docker): add healthcheck and stop grace period Watchtower waits for container to be healthy before stopping the old one. Grace period allows in-flight requests to drain on shutdown. Co-Authored-By: Claude Sonnet 4.6 --- Dockerfile | 3 +++ docker-compose.prod.yml | 1 + 2 files changed, 4 insertions(+) diff --git a/Dockerfile b/Dockerfile index 1349d6e..418446c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -35,4 +35,7 @@ USER svelte EXPOSE 3001 ENV PORT=3001 +HEALTHCHECK --interval=5s --timeout=3s --start-period=15s --retries=3 \ + CMD wget -qO- http://localhost:3001/ > /dev/null || exit 1 + CMD ["node", "build"] diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index 19414aa..18d97ee 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -10,6 +10,7 @@ services: - image-cache:/data/image-cache networks: - web + stop_grace_period: 30s volumes: image-cache: