Lektion 5.2 – Compose um Runner erweitern
Ziel der Lektion
Sie erweitern die ``docker-compose.yml`` um den Service n8n-runners, damit Python-Tasks über den External Task Runner ausgeführt werden können.
Schritt 1: docker-compose.yml bearbeiten
sudo nano /srv/docker/n8n/docker-compose.yml
Ersetzen Sie den Inhalt durch diese Version (n8n + Runner):
services: n8n: image: n8nio/n8n:latest container_name: n8n restart: unless-stopped ports: - "5678:5678" env_file: - .env volumes: - /srv/docker/n8n/data:/home/node/.n8n user: "1000:1000" n8n-runners: image: n8nio/runners:latest container_name: n8n-runners restart: unless-stopped depends_on: - n8n environment: - N8N_RUNNERS_TASK_BROKER_URI=http://n8n:5679 - N8N_RUNNERS_AUTH_TOKEN=${N8N_RUNNERS_AUTH_TOKEN}
Schritt 2: Stack neu erstellen (Recreate)
cd /srv/docker/n8n docker compose up -d --force-recreate
Schritt 3: Runner-Logs prüfen
docker compose logs -f n8n-runners
Erwartung: Der Runner startet ohne Fehler und verbindet sich zum Broker.
Quick-Checks bei Problemen
1) Läuft der Runner?
docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"
2) Token fehlt/ist falsch
Prüfen, ob die Variable in der ``.env`` existiert:
grep -n "N8N_RUNNERS_AUTH_TOKEN" /srv/docker/n8n/.env
3) Broker nicht erreichbar (Port 5679)
Prüfen, ob n8n läuft und ob 5679 relevant/aktiv ist:
docker logs --tail 80 n8n
Merkpunkte
n8n-runners benötigt denselben Token wie n8n (``N8N_RUNNERS_AUTH_TOKEN``). Der Broker läuft bei n8n auf Port 5679 und muss für den Runner erreichbar sein.