Benutzer-Werkzeuge

Webseiten-Werkzeuge


server:docker:andreas_homelab:gotify

Inhaltsverzeichnis

Gotify

Was ist das

Gotify ist ein einfacher, selbstgehosteter Dienst zum Versenden und Empfangen von Push-Benachrichtigungen. Es bietet eine Weboberfläche, eine Android-App und eine REST-API, womit es ideal ist, um Statusmeldungen von Servern, Skripten oder anderen Docker-Containern zentral zu sammeln.

Er dient zur:

  • Zentralisierung von System-Benachrichtigungen.
  • Integration in CI/CD-Pipelines oder Monitoring-Tools (wie What's Up Docker).
  • Bereitstellung einer API für eigene Skripte zum Senden von Nachrichten.

Beispiel

services:
  gotify:
    image: docker.io/gotify/server:2.8.0          # Always pin specific version, never use 'latest'
    labels:
      - wud.tag.include=\d+\.\d+\.\d+$  # For What's Up Docker monitoring
    container_name: gotify
    hostname: gotify
    restart: unless-stopped
    healthcheck:
      test: 'curl -f http://localhost:80/health || exit 1'
      interval: 60s
      timeout: 5s
      retries: 3
      start_period: 90s
    networks:
      - default                         # Use the main network
    volumes:
      - gotify_data:/app/data          # Named volume for persistence
    environment:
      # Gotify Configuration
      GOTIFY_DEFAULTUSER_NAME: ${ADMIN_USER:-admin}
      GOTIFY_DEFAULTUSER_PASS: ${ADMIN_PASSWORD:-changeme}
      TZ: ${TZ:-Europe/Berlin}
    ports:
      - "${GOTIFY_SERVER_PORT:-8081}:80"

volumes:
  gotify_data:

Erklärung

In dieser Konfiguration wird Gotify als Container betrieben:

  • Port 8081: Über diesen Port ist die Weboberfläche und die API erreichbar (Mapping auf den internen Port 80).
  • Healthcheck: Der Container prüft regelmäßig den `/health` Endpunkt, um sicherzustellen, dass der Dienst reagiert.
  • Volumen (gotify_data): Alle Daten (Benutzer, Nachrichten, App-Tokens) werden persistent unter `/app/data` gespeichert.
  • Umgebungsvariablen: Benutzername und Passwort für den Standard-Admin können über eine `.env`-Datei gesteuert werden.

Die Integration in What's Up Docker (WUD) erfolgt über das Label, damit der Controller weiß, welche Versionen überwacht werden sollen.

server/docker/andreas_homelab/gotify.txt · Zuletzt geändert: von neo