Techniverse Community

Mailcow Birthday Daemon 🎂

Ein einfacher Daemon, der automatisch einen Geburtstagskalender für jede Mailcow-Mailbox erzeugt und synchronisiert.

🏰 Website · 📰 Community · 🐘 Mastodon · 💬 Support


Kalenderansicht

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-dockerized die eigene docker-compose.yml bei Updates überschreibt, müssen eigene Anpassungen immer in der docker-compose.override.yml erfolgen. 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

Description
Sehr einfacher Daemon, der für jedes Mailcow-Postfach einen Geburtstagskalender erzeugt und synchronisiert.
Readme MIT 502 KiB
v0.4.2 Latest
2026-03-30 09:06:17 +00:00
Languages
Go 99.1%
Dockerfile 0.9%