Mailcow Birthday Daemon 🎂
Ein einfacher Daemon, der automatisch einen Geburtstagskalender für jede Mailcow-Mailbox erzeugt und synchronisiert.
🏰 Website · 📰 Community · 🐘 Mastodon · 💬 Support
✨ Highlights
🌟 Automatische Geburtstagskalender:
- Liest Geburtstage & Jahrestage aus allen CardDAV-Adressbüchern jeder Mailbox
- Erstellt & synchronisiert für jeden Benutzer einen eigenen Geburtstagskalender
🎨 Individuelle Anpassung:
- Kalendername & Kalenderfarbe frei wählbar
- Sync-Intervall & Event-Horizont flexibel einstellbar
⏰ Benachrichtigungen:
- Optionale Erinnerungen (VALARM) zur gewünschten Uhrzeit
🚫 Mailbox-Management:
- Einzelne Mailboxen gezielt ausschließen
- Automatische Verwaltung von App-Passwörtern (persistenter State)
🧹 Cleanup & Wartung:
- Integrierter Cleanup-Befehl für doppelte Kalender nach Umbenennung
- Startup-Connectivity-Check, Graceful Shutdown & Docker-Healthcheck
🌐 Docker-Optimierung:
- Hairpin-NAT-Lösung für Docker-Netzwerke
- Strukturiertes Logging mit konfigurierbarem Log-Level
- Läuft als Docker-Container direkt im Mailcow-Stack
🚀 Schnellstart
Den folgenden Abschnitt in eine docker-compose.override.yml im Mailcow-Verzeichnis (z. B. /opt/mailcow-dockerized) einfügen:
Wichtig: Da
mailcow-dockerizeddie eigenedocker-compose.ymlbei Updates überschreibt, müssen eigene Anpassungen immer in derdocker-compose.override.ymlerfolgen. Docker Compose lädt diese Datei automatisch und mergt sie mit der Hauptkonfiguration – eigene Änderungen gehen dadurch bei Mailcow-Updates nicht verloren.
services:
birthdaydaemon:
image: git.techniverse.net/scriptos/mailcow-birthday-daemon:latest
restart: always
depends_on:
- nginx-mailcow
networks:
- mailcow-network
environment:
- MAILCOW_BASE=https://mail.example.com
- MAILCOW_APIKEY=DEIN-APIKEY-HIER
volumes:
- birthdaydaemon:/data
volumes:
birthdaydaemon:
Hinweis: Das obige Beispiel zeigt nur die minimal nötigen Umgebungsvariablen. Eine vollständige Übersicht aller verfügbaren Umgebungsvariablen findest du im Schnellstart.
Anschließend starten:
cd /opt/mailcow-dockerized
docker compose up -d
Alle verfügbaren Image-Tags sind in der Container Registry einsehbar.
🔗 Repository-Spiegel
| Rolle | URL |
|---|---|
| Master | https://git.techniverse.net/scriptos/mailcow-birthday-daemon.git |
| Spiegel | https://github.com/pscriptos/mailcow-birthday-daemon.git |
Hinweis: Die Entwicklung findet im Master-Repository statt. Der GitHub-Spiegel wird automatisch synchronisiert. Issues und Feature-Requests können sowohl auf Gitea als auch auf GitHub eingereicht werden.
📚 Dokumentation
Die vollständige Dokumentation befindet sich im Ordner docs/.
© Patrick Asmus · Techniverse Network · Lizenz
