Get Rewarded! We will reward you with up to €50 credit on your account for every tutorial that you write and we publish!

Installation von Gotify mit Docker auf Debian

profile picture
Author
Maximilian Feix
Published
2026-06-22
Time to read
7 minutes reading time

About the author- Auszubildender bei Hetzner Online mit Interesse an Kubernetes, Ansible und Terraform. Ich beschäftige mich gerne mit Cloud-Technologien, Automatisierung und moderner Infrastruktur.

Einführung

Gotify ist ein quelloffener, selbst gehosteter Server zum Senden und Empfangen von Push-Benachrichtigungen. Er stellt eine einfache REST-API bereit, mit der Anwendungen, Skripte und Monitoring-Tools Benachrichtigungen an jedes Gerät senden können, auf dem die Gotify-Android-App oder ein Browser-Client läuft. In diesem Tutorial zeige ich dir Schritt für Schritt, wie du Gotify mit Docker auf einem Cloud Server mit Debian 13 installierst und deine erste Benachrichtigung über die API versendest.

Voraussetzungen

  • 1 Server (z.B. bei Hetzner)
    • Debian 13
    • Zugriff auf den root-Benutzer oder einen Benutzer mit sudo-Rechten

Beispiel-Benennungen

  • Benutzername: holu
  • E-Mail: email@example.com
  • Server: <203.0.113.1>

Schritt 1 - Verbindung mit SSH herstellen

Erstelle zunächst einen SSH-Schlüssel auf deinem lokalen Rechner, falls du noch keinen hast:

ssh-keygen -t ed25519 -C "email@example.com"

Dieser wird unter ~/.ssh/id_ed25519.pub gespeichert. Füge den Inhalt dieser Datei in der Hetzner Console unter "Sicherheit" » "SSH-Key hinzufügen" hinzu, damit du dich später mit deinem Server verbinden kannst.

Erstelle nun einen neuen Server in der Hetzner Console. Wähle dabei Debian 13 als Betriebssystem aus und füge den zuvor erstellten SSH-Key hinzu. Sobald der Server erstellt ist, erhältst du die IP-Adresse deines Servers.

Verbinde dich mit dem Server, indem du ein Terminal öffnest und den folgenden Befehl ausführst. Ersetze dabei 203.0.113.1 durch die tatsächliche IP-Adresse deines Servers:

ssh root@203.0.113.1 -p 22

Schritt 2 - System aktualisieren

Nachdem du dich erfolgreich mit deinem Server verbunden hast, stelle sicher, dass das System auf dem neuesten Stand ist:

sudo apt update
sudo apt upgrade -y

Diese Befehle aktualisieren die Paketliste und installieren die neuesten Versionen der Pakete auf deinem Server.

Schritt 3 - Docker installieren

Gotify wird in einem Docker-Container betrieben. Installiere Docker wie in der offiziellen Dokumentation erklärt mit den folgenden Befehlen:

# Add Docker's official GPG key:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

Nach der Installation kannst du überprüfen, ob Docker korrekt installiert wurde:

sudo systemctl status docker

Wenn Docker erfolgreich installiert wurde, solltest du eine Ausgabe sehen, die anzeigt, dass der Docker-Dienst aktiv und laufend ist.

Klicke hier für einen Beispiel-Output
holu@example-server:~$ sudo systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
     Active: active (running) since Mon 2026-06-22 09:00:00 UTC; 10s ago
 TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 1234 (dockerd)
      Tasks: 10
     Memory: 28.5M (peak: 30.6M)
        CPU: 312ms
     CGroup: /system.slice/docker.service
             └─1234 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Wenn Docker nicht läuft, kannst du es mit dem folgenden Befehl starten:

sudo systemctl start docker

Schritt 4 - Gotify installieren

Nachdem Docker installiert ist, kannst du Gotify einrichten. Erstelle zunächst ein Verzeichnis für Gotify und wechsle in dieses Verzeichnis:

mkdir gotify
cd gotify

Erstelle eine Datei namens docker-compose.yml mit dem folgenden Inhalt:

services:
  gotify:
    image: gotify/server
    container_name: gotify
    ports:
      - "8080:80"
    environment:
      - GOTIFY_DEFAULTUSER_PASS=changeme
    volumes:
      - ./gotify-data:/app/data
    restart: always

Einige Hinweise zur Konfiguration:

  • Port 8080 des Hosts wird auf Port 80 im Container weitergeleitet, sodass die Gotify-Weboberfläche unter http://<203.0.113.1>:8080 erreichbar ist.
  • GOTIFY_DEFAULTUSER_PASS legt das initiale Passwort für den Standard-Benutzer admin fest. Ersetze changeme durch ein sicheres Passwort, bevor du den Container startest.
  • Die Gotify-Daten (Benutzer, Anwendungen, Nachrichten) werden im Verzeichnis ./gotify-data auf deinem Server gespeichert, damit sie auch nach einem Neustart des Containers erhalten bleiben.

Speichere die Datei und starte den Gotify-Container:

docker compose up -d

Überprüfe, ob der Container erfolgreich gestartet wurde:

docker ps -a

Der Container mit dem Namen gotify sollte mit dem Status Up angezeigt werden.

Schritt 5 - Zugriff auf die Gotify-Weboberfläche

Öffne einen Webbrowser und rufe http://<203.0.113.1>:8080 auf. Du siehst die Gotify-Anmeldeseite.

Melde dich mit dem Benutzernamen admin und dem Passwort an, das du in GOTIFY_DEFAULTUSER_PASS festgelegt hast.

Nach dem Login siehst du das Gotify-Dashboard. Es ist noch leer – es gibt noch keine Anwendungen oder Nachrichten.

Schritt 5.1 - Admin-Passwort ändern

Es empfiehlt sich, das Admin-Passwort direkt nach dem ersten Login zu ändern, auch wenn du bereits einen eigenen Wert über die Umgebungsvariable gesetzt hast.

  • Klicke auf das Benutzer-Symbol oben rechts.
  • Gib ein neues Passwort ein und bestätige es.
  • Klicke auf "Change", um die Änderung zu speichern.

Schritt 6 - Anwendung erstellen und Testbenachrichtigung senden

Gotify nutzt sogenannte Anwendungen (Applications) als Absender von Benachrichtigungen. Jede Anwendung besitzt ein eindeutiges Token, das zur Authentifizierung von API-Anfragen verwendet wird. Du musst mindestens eine Anwendung erstellen, bevor du Nachrichten senden kannst.

Schritt 6.1 - Anwendung erstellen

  • Klicke in der Gotify-Weboberfläche in der oberen Leiste auf „Apps“.
  • Klicke auf "Create Application".
  • Gib der Anwendung einen Namen, z. B. test-app, und füge optional eine Beschreibung hinzu.
  • Klicke auf "Create", um die Anwendung zu speichern.

Nach dem Erstellen der Anwendung zeigt Gotify ein Token dafür an. Kopiere dieses Token – du brauchst es im nächsten Schritt, um eine Benachrichtigung zu senden.

Schritt 6.2 - Testbenachrichtigung über die API senden

Gotify stellt eine REST-API zum Versenden von Nachrichten bereit. Du kannst curl verwenden, um vom Terminal aus eine Testbenachrichtigung zu senden. Ersetze <your-app-token> durch das im vorherigen Schritt kopierte Token und 203.0.113.1 durch die IP-Adresse deines Servers:

curl -X POST "http://203.0.113.1:8080/message?token=<your-app-token>" \
  -F "title=Hallo von Gotify" \
  -F "message=Das ist eine Testbenachrichtigung." \
  -F "priority=5"

Wenn die Anfrage erfolgreich war, gibt die API ein JSON-Objekt zurück, das die neue Nachricht beschreibt:

{
  "id": 1,
  "appid": 1,
  "message": "Das ist eine Testbenachrichtigung.",
  "title": "Hallo von Gotify",
  "priority": 5,
  "date": "2026-06-22T10:00:00Z"
}

Wechsle zurück zur Gotify-Weboberfläche. Die Nachricht sollte nun im Dashboard unter der zuvor erstellten Anwendung erscheinen.

Das Feld priority ist eine Zahl zwischen 0 (minimal) und 10 (maximal). Anwendungen wie die Gotify-Android-App können diesen Wert verwenden, um zu entscheiden, ob eine stille Benachrichtigung oder eine Benachrichtigung mit hoher Priorität angezeigt werden soll.

Ergebnis

Du hast jetzt eine laufende Gotify-Instanz, über die du Push-Benachrichtigungen per einfacher REST-API senden kannst. Du kannst Gotify in eigene Skripte, Monitoring-Setups oder Automatisierungspipelines einbinden, indem du HTTP-POST-Anfragen an deinen Gotify-Server sendest.

Nächste Schritte:

Beschreibung
Firewall Richte eine Firewall ein, die standardmäßig alle eingehenden Verbindungen blockiert und nur die benötigten Ports erlaubt (z. B. Port 8080 für die Gotify-Weboberfläche).
Reverse Proxy Richte einen Reverse Proxy (z. B. mit Nginx) ein, um Gotify über eine Domain erreichbar zu machen und HTTPS zu aktivieren.
Gotify-Android-App Installiere die Gotify-Android-App und verbinde sie mit deinem Server, um Push-Benachrichtigungen direkt auf deinem Smartphone zu empfangen.
Gotify-Dokumentation Erkunde die vollständige API-Dokumentation, um mehr über Clients, Plugins und erweiterte Konfigurationsmöglichkeiten zu erfahren.
License: MIT
Want to contribute?

Get Rewarded: Get up to €50 in credit! Be a part of the community and contribute. Do it for the money. Do it for the bragging rights. And do it to teach others!

Report Issue
Try Hetzner Cloud

Get €20/$20 free credit!

Valid until: 31 December 2026 Valid for: 3 months and only for new customers
Get started
Want to contribute?

Get Rewarded: Get up to €50 credit on your account for every tutorial you write and we publish!

Find out more