Zum Inhalt springen

NAS / Unraid / Synology

NAS-Systeme haben eigene UID/GID-Konventionen, die zu EACCES-Fehlern auf /app/data/* führen können. Lösung: PUID und PGID als Environment-Variablen setzen.

Bei EACCES-Fehlern füge dem docker run hinzu:

Terminal-Fenster
-e PUID=$(id -u) -e PGID=$(id -g)

Oder in docker-compose.yml:

environment:
- PUID=1000
- PGID=1000

Defaults sind 1000/1000.

PlattformPUIDPGID
Linux / macOS / WSL$(id -u)$(id -g)
Unraid99100
Synology1026100
QNAP1000100
TrueNAS Scale568 (apps)568
OpenMediaVault1000100
  1. Registry → ghcr.io/jokeriscrazy/tocco-mate suchen → Image runterladen
  2. Image → Erstellen → Container mit:
    • Port: 3000:3000
    • Volume: /docker/tocco-mate/data/app/data
    • Env: MS_EMAIL, MS_PASSWORD, PUID=1026, PGID=100, TZ=Europe/Zurich
  3. Container starten → Logs auf API-Token prüfen
  1. Apps → “Add Container” → Template manuell erstellen mit:
    • Repository: ghcr.io/jokeriscrazy/tocco-mate:latest
    • Network: bridge
    • Port: 3000
    • Path: /mnt/user/appdata/tocco-mate/app/data
    • Variables: MS_EMAIL, MS_PASSWORD, PUID=99, PGID=100
  2. Apply → in Logs nach API-Token suchen
  1. Registry → Docker Hub → ghcr.io/jokeriscrazy/tocco-mate
  2. Erstellen → Erweitert:
    • Volume: /Container/tocco-mate/data/app/data
    • Environment: MS_EMAIL, MS_PASSWORD, PUID=1000, PGID=100
  3. Erstellen + Logs prüfen

Standard-compose.yml reicht — kein PUID/PGID nötig wenn der Docker-User dem App-User entspricht.

Terminal-Fenster
sudo chown -R 1000:1000 ./data # falls nötig
chmod 750 ./data
  • Firewall des NAS prüfen (Port 3000 freigeben)
  • Bei Synology: Sicherheit → Firewall → Regeln anpassen

Logs zeigen EACCES: permission denied, open '/app/data/...'

Abschnitt betitelt „Logs zeigen EACCES: permission denied, open '/app/data/...'“
  • PUID/PGID stimmen nicht → siehe Tabelle oben
  • Volume-Pfad auf NAS mit chown -R 1000:1000 anpassen (falls SSH-Zugriff)

App stürzt beim Scrape ab — Chromium failed to launch

Abschnitt betitelt „App stürzt beim Scrape ab — Chromium failed to launch“
  • NAS-Kernel zu alt für Chromium-Sandbox
  • Setze PLAYWRIGHT_CHROMIUM_ARGS=--no-sandbox (siehe Deployment)
  • Wahrscheinlich Health-Check schlägt fehl wegen langsamem Boot auf NAS
  • Erhöhe start_period in compose.yml auf 60s