watchdog-mailcow runs continuous internal checks: container health, queue size, certificate expiry, Rspamd response, MariaDB replication lag.
Configure alerts in mailcow.conf:
WATCHDOG_NOTIFY_EMAIL=alerts@yourdomain.com
WATCHDOG_NOTIFY_WEBHOOK=https://hooks.slack.com/services/...
WATCHDOG_NOTIFY_BAN=y # alert on fail2ban hits
WATCHDOG_SUBJECT="Mailcow alert"
Tuneables:
| Variable | Purpose | Sane default |
|---|---|---|
WATCHDOG_NOTIFY_START |
Notify when watchdog itself starts | n |
WATCHDOG_EXTERNAL_CHECKS |
Probe via 3rd-party DNS resolver | y |
WATCHDOG_MYSQL_REPLICATION_CHECKS |
Only if you replicate | n |
After editing, recreate the container:
docker compose up -d watchdog-mailcow
Sign in to keep track of what you have read.