n8n deployen

Lerne, wie du n8n als Helm Release über lowcloud deployst – inklusive PostgreSQL-Anbindung über Helm Release Dependencies.

Zuletzt aktualisiert: 16. März 2026

n8n ist eine leistungsstarke, quelloffene Workflow-Automatisierungsplattform. Mit dem lowcloud Helm Release deployst du n8n in deinem Kubernetes-Cluster – inklusive Anbindung an eine PostgreSQL-Datenbank.

Chart-Registry (n8n): https://community-charts.github.io/helm-charts/n8n

Chart-Registry (PostgreSQL): oci://registry-1.docker.io/cloudpirates/postgres

Voraussetzungen

  • Ein lowcloud-Account mit aktivem Cluster
  • Zugriff auf das lowcloud Dashboard

Quick Start

n8n benötigt eine externe PostgreSQL-Datenbank. Du musst daher zwei Services deployen und diese per Helm Release Dependencies verknüpfen.

1. PostgreSQL Values:

auth:
  username: n8n
  password: your-secure-password
  database: n8n

2. n8n Values:

db:
  type: postgresdb

postgresql:
  enabled: false

externalPostgresql:
  database: n8n
  username: n8n
  password: your-secure-password
Die Credentials (username, password, database) müssen in beiden Services identisch sein!

Konfiguration

PostgreSQL-Parameter

ParameterBeschreibungEmpfohlen
auth.usernameDatenbank-Benutzernamen8n
auth.passwordDatenbank-Passwort
auth.databaseName der Datenbankn8n

n8n-Parameter

ParameterBeschreibungWert
db.typeDatenbanktyppostgresdb
postgresql.enabledEingebaute PostgreSQL deaktivierenfalse
externalPostgresql.databaseExterne Datenbank-Namen8n
externalPostgresql.usernameExterner DB-Benutzernamen8n
externalPostgresql.passwordExternes DB-Passwort

Schritt-für-Schritt Anleitung

1. PostgreSQL Service hinzufügen

Navigiere im lowcloud Dashboard zu Add Service und wähle Helm Release aus. Suche im Popup nach der PostgreSQL-Registry:

oci://registry-1.docker.io/cloudpirates/postgres

Wähle eine Version aus ("latest" passt) und konfiguriere die Values:

auth:
  username: n8n
  password: your-secure-password
  database: n8n

Gib dem Service einen Namen (z.B. n8n-postgres) und klicke auf Deploy. Warte, bis das Label auf "Deployed" steht.

2. n8n Service hinzufügen

Erstelle einen zweiten Helm Release und suche nach der n8n-Registry:

https://community-charts.github.io/helm-charts/n8n

Gib dem Service einen Namen (z.B. n8n) und konfiguriere die Values:

db:
  type: postgresdb

postgresql:
  enabled: false

externalPostgresql:
  database: n8n
  username: n8n
  password: your-secure-password

3. Helm Release Dependencies verbinden

Verbinde den n8n-Service mit dem PostgreSQL-Service über die Helm Release Dependencies. Dadurch weiß n8n, wo die Datenbank erreichbar ist, und lowcloud stellt sicher, dass PostgreSQL vor n8n gestartet wird.

Öffne den n8n-Service, navigiere zu Dependencies und füge den zuvor erstellten PostgreSQL-Service als Abhängigkeit hinzu.

4. Deployment starten

Klicke im n8n-Service auf Deploy. Sobald das Label im Dashboard auf "Deployed" wechselt, ist deine n8n-Instanz einsatzbereit und mit der PostgreSQL-Datenbank verbunden.

Erweiterte Values

Für den produktiven Einsatz solltest du sowohl PostgreSQL als auch n8n mit Persistence, Resource Limits und einem festen Encryption Key konfigurieren.

PostgreSQL Values (Production):

auth:
  username: n8n
  password: your-secure-password
  database: n8n

primary:
  resources:
    requests:
      cpu: 250m
      memory: 256Mi
    limits:
      cpu: 500m
      memory: 512Mi
  persistence:
    enabled: true
    size: 10Gi

n8n Values (Production):

db:
  type: postgresdb

postgresql:
  enabled: false

externalPostgresql:
  database: n8n
  username: n8n
  password: your-secure-password

extraEnvVars:
  - name: N8N_ENCRYPTION_KEY
    value: "your-random-encryption-key"
  - name: WEBHOOK_URL
    value: "https://n8n.example.com/"

resources:
  requests:
    cpu: 250m
    memory: 256Mi
  limits:
    cpu: '1'
    memory: 1Gi
Der N8N_ENCRYPTION_KEY verschlüsselt alle gespeicherten Credentials in n8n. Setze diesen Wert einmalig und ändere ihn danach nicht mehr — sonst sind bestehende Credentials nicht mehr entschlüsselbar.

Die WEBHOOK_URL muss der öffentlich erreichbaren URL deiner n8n-Instanz entsprechen, damit Webhook-Trigger korrekt funktionieren.