
Ich wollte meine lokale n8n-Installation (basierend auf dem AI Starter Kit) zu einem kleinen Automatisierungshub aufbohren – der auf Ereignisse in einem Discord-Server reagieren kann. Die Lösung: n8n-nodes-discord-trigger
| # | Aktion | Wichtiges Detail |
|---|---|---|
| 1 | Discord App + Bot erstellt (developer portal) | Ohne verifizierte Mailadresse geht nichts. |
| 2 | Bot Token + Application ID kopiert | Zu finden unter Bot bzw. General Info |
| 3 | Bot über OAuth2 URL Generator auf Server eingeladen | Scopes = bot, passende Rechte nicht vergessen |
| 4 | In n8n → Credentials → Discord Bot Trigger API → Token + Client ID eingetragen | |
| 5 | Workflow erstellt mit Discord Trigger Node + Event ausgewählt |
Alles schien super – bis ich versucht habe, den Workflow zu speichern.
Fehlermeldung
Failed to deactivate trigger of workflow ID "…":
connect ECONNREFUSED ::1:5678
Ursache
localhost auf ::1 (IPv6 Loopback) aufgelöst.127.0.0.1 (IPv4) – also: Verbindung abgelehnt.Fix
# docker-compose.override.yml
services:
n8n:
environment:
- N8N_HOST=0.0.0.0
- N8N_PORT=5678
- N8N_PROTOCOL=http
- NODE_OPTIONS=--dns-result-order=ipv4first
Danach:
docker-compose downdocker-compose up -d
→ Jetzt hört n8n auf allen Interfaces, und localhost wird wieder als IPv4 interpretiert. Fehler behoben!
Tipp: Für lokale Anpassungen immer
docker-compose.override.ymlverwenden. So bleibt das Basis-Setup update-sicher.
Was passiert ist
Beim Herumprobieren hab ich die N8N_* Variablen versehentlich in den postgres-Service verschoben. Beim Neustart:
Recovery
git checkout oder Originaldatei wiederherstellen).docker-compose up -d → n8n verwendet wieder die richtige Postgres-DB, alles ist wieder da.Merksatz: „Gelöschte“ Daten in Docker sind fast immer ein Fall von falsch gemountetem Volume oder fehlender DB-Konfiguration – selten wirklich weg.
# Backup (z. B. per Cronjob)
docker-compose run --rm n8n \
n8n export:workflow --all --separate --output=/backup/workflows
docker-compose run --rm n8n \
n8n export:credentials --all --separate --output=/backup/credentials
# Restore
docker-compose run --rm n8n \
n8n import:credentials --separate --input=/backup/credentials
docker-compose run --rm n8n \
n8n import:workflow --separate --input=/backup/workflows
Am besten gleich in ein Git-Repo oder off-site Backup damit.
| Stolperfalle | Lösung | Warum wichtig? |
|---|---|---|
ECONNREFUSED ::1 | 0.0.0.0 + NODE_OPTIONS=--dns-result-order=ipv4first | IPv6-Falle entschärft, egal welches OS oder Container Setup |
| Datenverlust durch Config-Fehler | .override.yml nutzen, DB-Env-Vars niemals im falschen Service | Config-Änderung ohne Risiko |
| Keine Backups | Exporte regelmäßig automatisieren | Restore in Sekunden |
0.0.0.0 + NODE_OPTIONS setzen