Written by 19:20 Docker, NAS, Synology, Ugreen Views: 4

n8n auf dem Synology oder Ugreen NAS installieren – Schritt für Schritt

Installation mit Docker Compose: n8n läuft als Automatisierungsplattform auf dem NAS, mit Workflow-Diagramm und Docker-Compose-Befehl „docker compose up -d“.

n8n ist eines der mächtigsten Open-Source-Automatisierungstools überhaupt – und das Beste daran: Du kannst es komplett selbst hosten, auf deinem eigenen NAS. Keine monatlichen Gebühren, keine Cloud-Abhängigkeit, volle Kontrolle über deine Daten.

In diesem Artikel zeige ich dir, wie du n8n mit Docker auf deinem Synology oder Ugreen NAS zum Laufen bringst – inklusive PostgreSQL-Datenbank für stabile, persistente Datenspeicherung.


Was du brauchst

SynologyUgreen
BetriebssystemDSM 7 oder höherUGOS (aktuell)
Docker-VerwaltungContainer Manager (Paketzentrum)Docker App
DateimanagerFile StationDateimanager

Schritt 1: Ordner anlegen

Bevor wir den Container starten, müssen wir die Verzeichnisse manuell anlegen – sonst erstellt Docker sie als Root und n8n bekommt später keine Schreibrechte.

Synology: Öffne die File Station und navigiere nach /volume1/docker/

Ugreen: Öffne den Dateimanager und navigiere nach /volume1/docker/

Lege dort folgende Ordnerstruktur an:

/volume1/docker/n8n/
├── data/
├── postgres/
└── custom-nodes/

⚠️ Wichtig: Alle drei Unterordner müssen vor dem ersten Start manuell angelegt werden!


Schritt 2: Docker-Verwaltung öffnen

Synology: Öffne den Container Manager. Falls er noch nicht installiert ist, findest du ihn im Paketzentrum – kostenlos, einfach installieren.

Ugreen: Öffne die Docker App – sie ist in UGOS bereits vorinstalliert und direkt über das App-Menü erreichbar, falls nicht Schau im der Paketverwaltung.


Schritt 3: Neues Projekt anlegen

Synology – Container Manager: Klicke in der linken Seitenleiste auf Projekte → oben rechts auf Erstellen.

Ugreen – Docker App: Navigiere in der linken Seitenleiste zu Projekte → klicke auf Erstellen.

Fülle den Dialog bei beiden wie folgt aus:

  • Projektname: n8n
  • Pfad: /volume1/docker/n8n/
  • Quelle: docker-compose.yml erstellen

Schritt 4: Die Docker Compose einfügen

Kopiere die passende Compose für dein NAS vollständig und füge sie in das Textfeld ein.

Hinweis: Die einzige Zeile die sich zwischen Synology und Ugreen unterscheidet ist user – also UID und GID des Systembenutzers.


🔵 Synology NAS + Ugreen NAS

services:
  postgres:
    image: postgres:17
    container_name: n8n-postgres
    restart: unless-stopped
    environment:
      POSTGRES_DB: n8n
      POSTGRES_USER: n8n
      POSTGRES_PASSWORD: W3HQk5lDt0RgtcSkFYYCJ6ut
    volumes:
      - n8n_postgres_data:/var/lib/postgresql/data
    networks:
      - n8n-internal
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U n8n -d n8n"]
      interval: 10s
      timeout: 5s
      retries: 10

  n8n:
    image: n8nio/n8n:latest
    container_name: n8n
    restart: unless-stopped
    depends_on:
      postgres:
        condition: service_healthy
    ports:
      - "5678:5678"
    environment:
      # Datenbank
      DB_TYPE: postgresdb
      DB_POSTGRESDB_HOST: postgres
      DB_POSTGRESDB_PORT: 5432
      DB_POSTGRESDB_DATABASE: n8n
      DB_POSTGRESDB_USER: n8n
      DB_POSTGRESDB_PASSWORD: W3HQk5lDt0RgtcSkFYYCJ6ut

      # Lokaler Zugriff
      N8N_HOST: 192.168.178.108
      N8N_PORT: 5678
      N8N_PROTOCOL: http
      WEBHOOK_URL: http://192.168.178.108:5678/

      # WICHTIG gegen /.n8n Rechtefehler
      N8N_USER_FOLDER: /home/node/.n8n

      # Sicherheitsschlüssel
      N8N_ENCRYPTION_KEY: CHANGE_ME_64_CHAR_RANDOM_HEX
      N8N_USER_MANAGEMENT_JWT_SECRET: CHANGE_ME_LONG_RANDOM_SECRET

      # Zeitzone
      GENERIC_TIMEZONE: Europe/Berlin
      TZ: Europe/Berlin

      # Ausführungen aufräumen
      EXECUTIONS_MODE: regular
      EXECUTIONS_DATA_PRUNE: "true"
      EXECUTIONS_DATA_MAX_AGE: 336
      EXECUTIONS_DATA_PRUNE_MAX_COUNT: 10000

      # Lokal per HTTP
      N8N_SECURE_COOKIE: "false"

      # Logging
      N8N_LOG_LEVEL: warn

    volumes:
      - n8n_data:/home/node/.n8n

    networks:
      - n8n-internal
      - n8n-external

volumes:
  n8n_data:
  n8n_postgres_data:

networks:
  n8n-internal:
    driver: bridge
    internal: true

  n8n-external:
    driver: bridge

Hinweis: Ersetze die IP 192.168.178.108 durch die lokale IP deines NAS.

  • Synology: DSM → Systemsteuerung → Netzwerk
  • Ugreen: UGOS → Einstellungen → Netzwerk

🔑 Eigene Sicherheitsschlüssel generieren (empfohlen!)

Die Schlüssel in den Compose-Dateien oben sind bereits gültige Zufallswerte – du kannst sie direkt verwenden. Wenn du lieber eigene Keys generieren möchtest, geht das kinderleicht mit IT-Tools, einem kostenlosen Open-Source-Tool für Entwickler:

👉 it-tools.tech/token-generator

So geht’s:

  1. Öffne den Token Generator auf it-tools.tech
  2. Stelle folgende Optionen ein:
    • ✅ Uppercase (ABC…)
    • ✅ Lowercase (abc…)
    • ✅ Numbers (123…)
    • ❌ Symbols ausschalten! (n8n verträgt keine Sonderzeichen in den Keys)
    • Length: 64
  3. Klicke auf Refresh – ein neuer Key wird generiert
  4. Klicke auf Copy und füge den Key bei N8N_ENCRYPTION_KEY ein
  5. Klicke erneut auf Refresh für einen zweiten Key
  6. Diesen bei N8N_USER_MANAGEMENT_JWT_SECRET einfügen

⚠️ Wichtig: Die Keys dürfen nach dem ersten Start niemals mehr geändert werden! n8n verschlüsselt damit alle gespeicherten Credentials. Änderst du den Key nachträglich, sind sämtliche API-Keys und Passwörter in deinen Workflows verloren.


Schritt 5: Deployen

Synology: Klicke unten rechts auf Weiter und dann auf Fertig bzw. Deploy.

Ugreen: Klicke auf Erstellen um den Stack zu starten.

Bei beiden lädt Docker jetzt die Images herunter und startet die Container – zuerst PostgreSQL, dann n8n (dank depends_on und dem Healthcheck). Beim ersten Start kann das 1–2 Minuten dauern.


Schritt 6: n8n aufrufen

Sobald beide Container grün laufen, öffne deinen Browser und rufe auf:

http://192.168.178.108:5678

Beim ersten Aufruf wirst du direkt durch die Einrichtung geführt: Account anlegen, Passwort setzen – und dann kann es losgehen.


Tipp: Später auf eine Domain umziehen

Wenn du n8n über eine Domain erreichbar machen möchtest (z. B. über Nginx Proxy Manager), musst du in der Compose nur vier Zeilen anpassen:

N8N_HOST: n8n.deinedomain.de
N8N_PROTOCOL: https
WEBHOOK_URL: https://n8n.deinedomain.de/
N8N_SECURE_COOKIE: "true"

Stack dann im Container Manager / der Docker App stoppen und neu starten – fertig.


Fazit

n8n auf dem NAS selbst zu hosten ist einfacher als gedacht – egal ob Synology oder Ugreen. Mit PostgreSQL als Datenbank läuft es stabil auch bei vielen Automationen und großen Datenmengen. Die Docker Compose oben ist produktionsreif: persistente Volumes, isoliertes internes Netzwerk für die Datenbank, automatischer Cleanup alter Ausführungen.

Viel Spaß beim Automatisieren! 🚀


Hallo liebe Freunde des Internets – wenn dir dieser Artikel geholfen hat, schau auch auf meinem YouTube-Kanal vorbei, wo ich solche Setups im Video erkläre. BLOGPOST echo ok


(Visited 4 times, 1 visits today)
Close