From 4ded07bc635f0b64c042e1f94eb217883ae84f16 Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 14 Oct 2026 02:19:54 +0200 Subject: [PATCH] Judge mailu's front by what mail needs, not only its web health The image's own check asks nginx's /health and that dovecot runs, so the front stayed healthy while mail could not flow (issue 688). It now also needs port 25 to greet over SMTP and the served certificate to hold for 14 more days; certbot renews at 30, so a renewal stuck for two weeks is said long before the certificate expires. --- modules/mailu/module.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/mailu/module.json b/modules/mailu/module.json index 3a4a3568..92412bbe 100644 --- a/modules/mailu/module.json +++ b/modules/mailu/module.json @@ -560,7 +560,12 @@ "name": "mailu-front", "image": "ghcr.io/mailu/nginx@sha256:36f98897cd1bc9d27628bbb4e04bdf60147af2ec7507d6da77f002c4f256896d", "health": { - "kind": "runtime" + "kind": "exec", + "command": "curl -m3 -skfLo /dev/null http://127.0.0.1:10204/health && kill -0 $(cat /run/dovecot/master.pid) && python3 -c \"import smtplib; s = smtplib.SMTP('127.0.0.1', 25, timeout=5); s.ehlo('health'); s.quit()\" && openssl x509 -checkend 1209600 -noout -in /certs/letsencrypt/live/mailu/nginx-chain.pem", + "interval": "60s", + "timeout": "15s", + "looks": 3, + "grace": "120s" }, "network": "mailu", "env-file": [