NTFY - Docker Stack macht Probleme mit Verzeichnis

Swiper

New member
Ich versuche ntfy mittels Portainer zu Konfigurieren
Mein System: Ubuntu 24.04 (Root 0:0), Portainer

NTFY soll auf einer öffentlichen Domain laufen, deswegen möchte ich ein Passwort vor die Gui stellen

Ich habe schon eine Menge ausprobiert. Bekomme aber immer einen Error in meinen Logs. Die beiden Verzeichnisse sind natürlich mit allen Rechten angelegt. Gehören also root:root.
Habe ich hier was falsch verstanden?

YAML:
lang-yaml
services:
  ntfy:
    image: binwiederhier/ntfy
    container_name: ntfy
    command:
      - serve
    environment:
      - TZ=Europe/Berlin    # optional: Change to your desired timezone
      - NTFY_base_url= https://ntfy.xxxx.de
      #- NTFY_CACHE_FILE= /var/cache/ntfy/cache.db
      #- NTFY_AUTH_FILE= /var/cache/ntfy/auth.db
      #- NTFY_AUTH_DEFAULT_ACCESS= write-all
      

    #user: 0:0 # optional: Set custom user/group or uid/gid
    volumes:
      - /var/cache/ntfy:/var/cache/ntfy
      - /etc/ntfy:/etc/ntfy
    ports:
      - 1977:80
    restart: unless-stopped


Log:
2026/02/06 11:02:43 FATAL cache database directory /var/cache/ntfy does not exist or is not accessible (exit_code=1) cache database directory
 
NTFY soll auf einer öffentlichen Domain laufen, deswegen möchte ich ein Passwort vor die Gui stellen
Wofür genau? Einfach so konfigurieren, dass niemand ohne Login was lesen noch schreiben kann. Wenn du ein Passwort davor schaltest, dann machst du es dir doch nur komplizierter Nachrichten zu senden oder die App zu nutzen. Ansonsten mach es nicht von öffentlich erreichbar.

Wegen der Installation lies dir mal die Doku durch. https://docs.ntfy.sh/install/ da steht alles was du wissen musst. Auch eine Beispiel Compose.
 
- /var/cache/ntfy:/var/cache/ntfy
- /etc/ntfy:/etc/ntfy
Beides eine schlechte Idee, wenn man mit Portainer arbeitet. Selbst ohne würde ich meine Container-Daten nicht, mit denen vom Host vermischen wollen. Aus Sicht des Clients (=Portainer) existieren die Verzeichnisse nicht (im Portainer Container Dateisystem).

Ich würde hier empfehlen eine Verzeichnisstruktur auf dem Host zu etablieren, in der alle Binds für alle Container liegen, dann würde man das Oberverzeichnis in Portainer als Bind mappen kann, und so der Pfad für die Binds innen und außen identisch wird.

Also etwas in diese Richtung: /opt/docker-data/<container>/<volume>.
Portainer selbst braucht dann noch das Bind-Volume: -v /opt/docker-data:/opt-docker-data.

Wenn man dann den Stack (das heisst in Docker selbst übrigens nicht so -> ist eine Portainer Unsauberkeit) die Volumes so definiert:
Code:
    volumes:
      - /opt/docker-data/nfty/cache:/var/cache/ntfy
      - /opt/docker-data/nfty/etc:/etc/ntfy
Dann landen die Daten auf dem Host in den angegebene Verzeichnissen.
 

Letzte Anleitungen

Statistik des Forums

Themen
7.750
Beiträge
75.823
Mitglieder
8.354
Neuestes Mitglied
LarrytheHammer
Zurück
Oben