From f65330399fd18c3a8d0d73db6a83566ed80fc0d5 Mon Sep 17 00:00:00 2001 From: Till JS Date: Fri, 8 May 2026 20:00:27 +0200 Subject: [PATCH] =?UTF-8?q?fix(stalwart):=20disable=20healthcheck=20?= =?UTF-8?q?=E2=80=94=20distroless=20image=20has=20no=20wget?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Stalwart's official Docker image is distroless and has no wget, curl, nc, ss, or netstat. The compose healthcheck (CMD wget ...) was failing with "executable file not found" since 2026-05-05; container shows status=unhealthy 24/7 even though Stalwart itself runs fine on :25 / :587 / :465 / :993 / :8080. Disable. Crash detection comes from docker's restart=always plus mana-monitoring's external SMTP probe (blackbox-exporter), not from inside the container. Co-Authored-By: Claude Opus 4.7 (1M context) --- docker-compose.macmini.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/docker-compose.macmini.yml b/docker-compose.macmini.yml index 9a2959c61..68da64d60 100644 --- a/docker-compose.macmini.yml +++ b/docker-compose.macmini.yml @@ -686,12 +686,14 @@ services: - stalwart_data:/opt/stalwart-mail environment: - STALWART_ADMIN_PASSWORD=${STALWART_ADMIN_PASSWORD:-ChangeMe123!} + # Stalwart's official image is distroless — no wget, curl, nc, ss, + # netstat. Any `docker exec`-based healthcheck just OOMs with + # "executable file not found". Deactivate; rely on docker's + # `restart: always` if Stalwart's process actually crashes + # (mana-monitoring will catch the SMTP-port-unreachable case via + # blackbox-exporter from outside the container). healthcheck: - test: ["CMD", "wget", "-q", "--spider", "http://localhost:8080/healthz"] - interval: 120s - timeout: 5s - retries: 3 - start_period: 10s + disable: true mana-crawler: build: