n8n Workflow-Automatisierung: Self-Hosted Alternative zu Zapier (2026)
n8n ist die Open-Source-Plattform zur Workflow-Automatisierung, die sich schnell zur bevorzugten Alternative zu Zapier und Make entwickelt. Mit Self-Hosting-Moglichkeiten, einem visuellen Workflow-Builder und uber 400 Integrationen gibt n8n Entwicklern die volle Kontrolle uber ihre Automatisierungsinfrastruktur. Dieser Leitfaden behandelt alles von der Einrichtung bis zu fortgeschrittenen Workflow-Mustern.
Was ist n8n?
n8n (ausgesprochen "n-acht-n") ist ein Fair-Code-lizenziertes Workflow-Automatisierungstool. Im Gegensatz zu SaaS-Alternativen konnen Sie n8n selbst hosten, was Ihnen vollstandige Datensicherheit und unbegrenzte Ausfuhrungen ermoglicht.
Hauptfunktionen:
- Visueller Workflow-Builder: Drag-and-Drop-Oberflache zur Erstellung von Automatisierungen
- Uber 400 Integrationen: Vorgefertigte Nodes fur beliebte Dienste
- Self-Hosting: Betrieb auf der eigenen Infrastruktur
- Code bei Bedarf: JavaScript/Python-Nodes fur benutzerdefinierte Logik
- Fair-Code-Lizenz: Kostenlos nutzbar, Quellcode verfugbar
Erste Schritte
Installationsoptionen
# Docker (recommended for production)
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-v ~/.n8n:/home/node/.n8n \
n8nio/n8n
# npm (for development)
npm install n8n -g
n8n start
# Docker Compose (with PostgreSQL)
# See docker-compose.yml below
Docker Compose Einrichtung
version: '3.8'
services:
n8n:
image: n8nio/n8n
ports:
- "5678:5678"
environment:
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=admin
- N8N_BASIC_AUTH_PASSWORD=secure_password
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=n8n_password
- N8N_ENCRYPTION_KEY=your-encryption-key
volumes:
- n8n_data:/home/node/.n8n
depends_on:
- postgres
postgres:
image: postgres:15
environment:
- POSTGRES_USER=n8n
- POSTGRES_PASSWORD=n8n_password
- POSTGRES_DB=n8n
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
n8n_data:
postgres_data:
Kernkonzepte
Workflows
Ein Workflow ist eine Sammlung von miteinander verbundenen Nodes. Jeder Workflow beginnt mit einem Trigger-Node und fließt durch Action-Nodes.
Nodes
Nodes sind die Bausteine von Workflows:
- Trigger-Nodes: Starten die Workflow-Ausfuhrung (Webhooks, Zeitplane, App-Events)
- Action-Nodes: Fuhren Operationen aus (API-Aufrufe, Datentransformation, Benachrichtigungen)
- Logic-Nodes: Steuern den Ablauf (IF, Switch, Merge, Split)
Ausfuhrungen
Jedes Mal, wenn ein Workflow ausgefuhrt wird, wird eine Ausfuhrung erstellt. Sie konnen den Ausfuhrungsverlauf einsehen, Fehler debuggen und fehlgeschlagene Laufe erneut starten.
Ihren ersten Workflow erstellen
Beispiel: Slack-Benachrichtigung bei GitHub-Issues
Dieser Workflow sendet eine Slack-Nachricht, wenn ein neues GitHub-Issue erstellt wird:
{
"nodes": [
{
"name": "GitHub Trigger",
"type": "n8n-nodes-base.githubTrigger",
"parameters": {
"owner": "your-org",
"repository": "your-repo",
"events": ["issues"]
}
},
{
"name": "Filter New Issues",
"type": "n8n-nodes-base.if",
"parameters": {
"conditions": {
"string": [{
"value1": "={{$json.action}}",
"value2": "opened"
}]
}
}
},
{
"name": "Send Slack Message",
"type": "n8n-nodes-base.slack",
"parameters": {
"channel": "#github-notifications",
"text": "New issue: {{$json.issue.title}}\n{{$json.issue.html_url}}"
}
}
]
}
Fortgeschrittene Muster
Code-Nodes verwenden
Wenn vorgefertigte Nodes nicht ausreichen, verwenden Sie JavaScript:
// Code node example: Transform API response
const items = $input.all();
const transformed = items.map(item => {
return {
json: {
id: item.json.id,
name: item.json.name.toUpperCase(),
createdAt: new Date(item.json.created_at).toISOString(),
isActive: item.json.status === 'active'
}
};
});
return transformed;
HTTP-Request-Node
Rufen Sie beliebige APIs mit dem HTTP-Request-Node auf:
// HTTP Request configuration
{
"method": "POST",
"url": "https://api.example.com/data",
"authentication": "genericCredentialType",
"headers": {
"Content-Type": "application/json"
},
"body": {
"name": "={{$json.name}}",
"email": "={{$json.email}}"
}
}
Fehlerbehandlung
// Error Trigger workflow
// Create a separate workflow that triggers on errors
// In your main workflow, use the Error Trigger node
// It receives: workflow name, execution ID, error message
// Example: Send error to Discord
{
"nodes": [
{
"name": "Error Trigger",
"type": "n8n-nodes-base.errorTrigger"
},
{
"name": "Discord Notification",
"type": "n8n-nodes-base.discord",
"parameters": {
"content": "Workflow failed: {{$json.workflow.name}}\nError: {{$json.execution.error.message}}"
}
}
]
}
Schleifen und Stapelverarbeitung
// Split In Batches node for processing large datasets
// Processes items in configurable batch sizes
// Example: Process 100 items, 10 at a time
{
"name": "Split In Batches",
"type": "n8n-nodes-base.splitInBatches",
"parameters": {
"batchSize": 10
}
}
// Loop back to process next batch
// Connect the "done" output to continue workflow
// Connect the "loop" output back to processing nodes
Beliebte Integrationen
Datenbankoperationen
-- PostgreSQL node example
SELECT * FROM users
WHERE created_at > '{{$json.startDate}}'
AND status = 'active'
ORDER BY created_at DESC
LIMIT 100;
KI/LLM-Integration
// OpenAI node configuration
{
"resource": "chat",
"model": "gpt-4",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "={{$json.userMessage}}"
}
],
"temperature": 0.7
}
Webhook-Endpunkte
// Webhook trigger creates an endpoint like:
// https://your-n8n.com/webhook/abc123
// Respond with custom data
{
"name": "Respond to Webhook",
"type": "n8n-nodes-base.respondToWebhook",
"parameters": {
"responseBody": "={{JSON.stringify($json)}}",
"responseCode": 200
}
}
Anmeldedatenverwaltung
n8n speichert API-Schlussel und Tokens sicher:
// Credentials are referenced by name, not exposed in workflow
{
"credentials": {
"slackApi": {
"name": "My Slack Token"
}
}
}
// Environment variables for sensitive data
// Set in docker-compose or .env file
N8N_ENCRYPTION_KEY=your-32-char-encryption-key
GENERIC_API_KEY=your-api-key
Produktionsbereitstellung
n8n skalieren
- Queue-Modus: Trennung der Hauptinstanz von Workern fur Hochvolumen-Verarbeitung
- PostgreSQL: Verwenden Sie PostgreSQL anstelle von SQLite fur die Produktion
- Redis: Erforderlich fur die Skalierung im Queue-Modus
# Queue mode configuration
environment:
- EXECUTIONS_MODE=queue
- QUEUE_BULL_REDIS_HOST=redis
- QUEUE_BULL_REDIS_PORT=6379
Uberwachung
// n8n exposes metrics at /metrics endpoint
// Configure Prometheus scraping
// Key metrics:
// - n8n_workflow_executions_total
// - n8n_workflow_execution_duration_seconds
// - n8n_active_workflows
n8n im Vergleich zu Alternativen
| Funktion | n8n | Zapier | Make |
|---|---|---|---|
| Self-Hosting | Ja | Nein | Nein |
| Preise | Kostenlos (selbst gehostet) | $19,99+/Monat | $9+/Monat |
| Code-Nodes | JavaScript, Python | Begrenzt | Begrenzt |
| Integrationen | 400+ | 6000+ | 1500+ |
| Open Source | Fair-Code | Nein | Nein |
| Datenschutz | Volle Kontrolle | Nur Cloud | Nur Cloud |
Haufige Anwendungsfalle
DevOps-Automatisierung
- CI/CD-Benachrichtigungen an Slack/Discord
- Incident-Management (PagerDuty, Opsgenie)
- Infrastruktur-Uberwachungsalarme
Datenpipelines
- ETL von APIs zu Datenbanken
- Berichtserstellung und -verteilung
- Datensynchronisation zwischen Diensten
Geschaftsautomatisierung
- CRM-Updates aus Formularubermittlungen
- Rechnungserstellung und -versand
- Kunden-Onboarding-Sequenzen
Best Practices
- Sub-Workflows verwenden: Komplexe Automatisierungen in wiederverwendbare Teile aufteilen
- Fehler behandeln: Immer Fehlerbehandlungs-Workflows hinzufugen
- Inkrementell testen: Die manuelle Ausfuhrungsfunktion nutzen, um Node fur Node zu testen
- Versionskontrolle: Workflows als JSON exportieren und in Git speichern
- Dokumentieren: Sticky Notes verwenden, um die Workflow-Logik zu erklaren
- Anmeldedaten sichern: Den integrierten Anmeldedatenspeicher verwenden, niemals Geheimnisse hardcoden
Fazit
n8n bietet eine leistungsstarke, selbst hostbare Workflow-Automatisierungsplattform, die Entwicklern die volle Kontrolle uber ihre Integrationen gibt. Mit seinem visuellen Builder, der umfangreichen Node-Bibliothek und der Code-Flexibilitat ist es ideal fur Teams, die Automatisierung ohne Herstellerbindung oder Preis pro Ausfuhrung benotigen. Beginnen Sie mit einfachen Workflows und bauen Sie schrittweise komplexere Automatisierungen auf, wahrend Sie die Plattform kennenlernen.