n8n mit CapRover hosten: Schritt-für-Schritt-Anleitung
Ein selbst gehostetes n8n bietet Ihnen maximale Kontrolle über Ihre Automatisierungen und Daten. In Kombination mit CapRover lässt sich die Installation stark vereinfachen, da viele Infrastruktur-Aufgaben automatisch übernommen werden. In dieser Anleitung erfahren Sie Schritt für Schritt, wie Sie n8n auf einem Server mit CapRover bereitstellen.
Schritt 1: Voraussetzungen prüfen und passenden Server wählen
Bevor Sie mit der Installation beginnen, sollten Sie sicherstellen, dass die technischen Voraussetzungen erfüllt sind. Für CapRover benötigen Sie einen Linux-Server, bestenfalls mit Ubuntu 22.04 oder neuer, eine Domain (für HTTPS) sowie grundlegende SSH-Zugriffsrechte. Außerdem sollte Docker installiert werden, da CapRover darauf basiert.
Neben den technischen Voraussetzungen ist die Wahl des richtigen Servers entscheidend. Je nach Einsatzszenario unterscheiden sich die Anforderungen deutlich.
Privatanwendende und kleine Projekte
Wenn Sie n8n für persönliche Automatisierungen nutzen möchten, also beispielsweise zur Verbindung von APIs, kleinen Workflows oder Smart-Home-Integrationen, sind die Anforderungen vergleichsweise gering. Im Regelfall laufen nur wenige Workflows parallel und die Datenmenge ist überschaubar. Wichtig ist hier vor allem ein günstiger Einstieg und einfache Skalierbarkeit. Auch Tests und Experimente lassen sich in dieser Umgebung problemlos durchführen. Ein kleiner VPS reicht dafür in der Regel vollkommen aus.
Startups und Side-Projekte
Startups nutzen n8n häufig für MVPs, interne Tools oder erste Automatisierungen im Marketing und Vertrieb. Hier steigen die Anforderungen bereits leicht an, da mehrere Workflows parallel laufen und externe Dienste angebunden werden. Auch Webhooks und API-Integrationen spielen eine größere Rolle. Stabilität und Performance werden wichtiger, insbesondere bei wachsender Nutzerzahl. Ein mittelgroßer VPS bietet in diesem Falle eine gute Balance zwischen Kosten und Leistung.
Kleine und mittlere Unternehmen (KMU)
KMUs setzen n8n oft produktiv ein und nutzen das Low-Code-Tool für CRM-Automatisierung, Monitoring, Datenintegration oder Support-Prozesse. Die Workflows sind komplexer und laufen dauerhaft im Hintergrund. Zudem steigen Sicherheitsanforderungen und Verfügbarkeitsansprüche. Backups und Skalierung sollten hier von Anfang an mitgedacht werden. Entsprechend ist ein leistungsstärkerer Server empfehlenswert.
Enterprise und datenintensive Anwendungen
In größeren Unternehmen oder bei datenintensiven Anwendungen, also bei KI-Workflows, großen API-Pipelines oder Event-Streaming, steigen die Anforderungen deutlich. Hier laufen viele parallele Prozesse, teilweise mit hoher Last und großen Datenmengen. Auch Hochverfügbarkeit, Monitoring und Skalierung sind essenziell. In solchen Szenarien wird häufig mit mehreren Instanzen oder zusätzlichen Services gearbeitet. Ein leistungsstarker VPS oder eine skalierbare Cloud-Infrastruktur ist hier Pflicht.
Serverempfehlungen im Überblick
| Anwendungsgebiet | Zielgruppe | Empfohlener VPS | Typische Nutzung | Skalierbarkeit |
|---|---|---|---|---|
| Privatanwendende/Tests | Einzelpersonen | 2 bis 4 vCores, 4 GB RAM, 80 bis 120 GB SSD | Kleine Workflows, Experimente | Niedrig |
| Startups/Side-Projekte | kleine Teams | 4 vCores, 4–8 GB RAM, 120 GB NVMe | APIs, Webhooks, erste Automationen | Mittel |
| KMU | Unternehmen | 6 vCores, 8 GB RAM, 240 GB NVMe | Produktive Workflows, Integrationen | Hoch |
| Enterprise/High Load | große Organisationen | 8+ vCores, 16+ GB RAM, 400+ GB NVMe | Datenpipelines, KI, Skalierung | Sehr hoch |
- Maximale Effizienz ohne Mehraufwand
- Self-hosted Automation: Keine Task-Limits, volle Kostenkontrolle
- Über 500 Integrationen & Tools dank Open Source
Schritt 2: CapRover auf dem Server installieren
Verbinden Sie sich zunächst per SSH mit Ihrem Server:
ssh root@IHRE-SERVER-IPbashInstallieren Sie anschließend CapRover mit folgendem Befehl:
docker run -d \
-e ACCEPTED_TERMS=true \
-p 80:80 -p 443:443 -p 3000:3000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /captain:/captain \
caprover/caproverbash
Nach der Installation erreichen Sie das CapRover-Dashboard unter:
http://IHRE-SERVER-IP:3000bashSchritt 3: Domain konfigurieren und SSL aktivieren
Melden Sie sich zunächst im CapRover-Dashboard an, das Sie in der Regel über http://captain.IHRE-DOMAIN oder direkt über die Server-IP mit entsprechendem Port erreichen. Melden Sie sich beim ersten Login mit dem Standardpasswort „captain42“ an.

Im nächsten Schritt konfigurieren Sie die sogenannte Root Domain. Diese dient als Basis für alle Anwendungen, die Sie später über CapRover bereitstellen. Tragen Sie im Bereich „CapRover Root Domain Configurations“ eine Subdomain ein, zum Beispiel apps.ihredomain.de.
Damit CapRover Ihre Anwendungen automatisch unter eigenen Subdomains bereitstellen kann, müssen Sie zunächst Ihre Domain richtig konfigurieren. Dazu legen Sie im DNS einen sogenannten Wildcard-A-Record an. Dieser sorgt dafür, dass alle Subdomains einer bestimmten Domain automatisch auf Ihren Server zeigen. Sie erstellen dafür im DNS einen Eintrag, bei dem *.apps.ihredomain.de auf die öffentliche IP-Adresse Ihres Servers verweist. Das Sternchen steht dabei als* Platzhalter für beliebige Subdomains*.
Sobald Ihre Domain korrekt mit dem Server verbunden ist, können Sie in CapRover ganz einfach die HTTPS-Verschlüsselung aktivieren. Klicken Sie dazu im Dashboard auf „Enable HTTPS“ oder „Enable SSL“. CapRover verwendet im Hintergrund automatisch Let’s Encrypt, um ein kostenloses SSL-Zertifikat zu erstellen. Dieser Vorgang läuft vollständig automatisch ab und erfordert keine zusätzlichen Einstellungen.
Schritt 4: Neue App für n8n erstellen
Öffnen Sie im CapRover-Dashboard den Bereich Apps und klicken Sie auf „Create New App“. Vergeben Sie einen eindeutigen Namen für Ihre Anwendung, wie zum Beispiel „n8n“. Dieser Name wird später auch Teil der URL Ihrer App, daher sollte er möglichst kurz und eindeutig sein. Aktivieren Sie bei der Erstellung außerdem unbedingt die Option „Has Persistent Data“. Diese Einstellung sorgt dafür, dass CapRover die App als persistente Anwendung behandelt. Nur so können Sie später dauerhaft Speicher konfigurieren, damit Ihre n8n-Daten nicht verloren gehen.

Nach dem Erstellen wird die App automatisch in Ihrer App-Übersicht angezeigt. Klicken Sie darauf, um die Detailansicht zu öffnen, und wechseln Sie anschließend in den Tab „Deployment“. Von dort aus starten Sie im nächsten Schritt die Bereitstellung von n8n.
Schritt 5: n8n per Docker deployen
CapRover bietet Ihnen im Bereich „Deployment“ eine Reihe verschiedener Möglichkeiten, Anwendungen bereitzustellen. Für n8n ist die einfachste Variante die Nutzung eines fertigen Docker-Images (Methode 6).
Tragen Sie im Feld Image Name das offizielle Image ein:
docker.n8n.io/n8nio/n8n
Dieses Image enthält bereits eine lauffähige n8n-Installation. Klicken Sie anschließend auf „Deploy Now“, um den Container zu starten.
n8n läuft standardmäßig intern auf Port 5678. In manchen Fällen erkennt CapRover diesen Port nicht automatisch korrekt. Überprüfen Sie daher nach dem Deployment die HTTP-Einstellungen Ihrer App, indem Sie Ihre n8n-App im CapRover-Dashboard öffnen und in den Bereich „HTTP Settings“ wechseln. Setzen Sie hier den Container HTTP Port auf 5678.
Wenn der falsche Port konfiguriert ist, kann Ihre n8n-Instanz zwar laufen, ist jedoch im Browser nicht erreichbar. Achten Sie daher unbedingt auf die korrekte Einstellung.
Alternativ können Sie eine sogenannte captain-definition verwenden. Diese Variante ist besonders sinnvoll, wenn Sie bereits beim Deployment wichtige Umgebungsvariablen setzen möchten. Erstellen Sie dazu im Deploy-Bereich eine neue Definition mit folgendem Inhalt:
{
"schemaVersion": 2,
"dockerfileLines": [
"FROM docker.n8n.io/n8nio/n8n",
"ENV N8N_HOST=n8n.IHRE-DOMAIN",
"ENV N8N_PORT=5678",
"ENV N8N_PROTOCOL=https",
"ENV WEBHOOK_URL=https://n8n.IHRE-DOMAIN/",
"ENV N8N_PROXY_HOPS=1",
"EXPOSE 5678"
]
}Mit dieser Konfiguration stellen Sie sicher, dass n8n direkt unter Ihrer Domain erreichbar ist und Webhooks korrekt funktionieren. Besonders die Variable WEBHOOK_URL ist wichtig, damit externe Dienste (z. B. Slack oder APIs) korrekt mit Ihrem n8n-Server kommunizieren können.
Starten Sie anschließend den Deployment-Prozess. CapRover lädt nun das Image herunter, erstellt den Container und startet die Anwendung automatisch.

Schritt 6: Persistenten Speicher einrichten
Damit Ihre Workflows, Zugangsdaten und Einstellungen in n8n dauerhaft gespeichert werden, müssen Sie einen persistenten Speicher (das sogenannte Volume) konfigurieren. Ohne diese Einstellung würden alle Daten verloren gehen, sobald der Container neu gestartet oder aktualisiert wird, was im produktiven Betrieb unbedingt vermieden werden sollte.
Öffnen Sie dazu im CapRover-Dashboard Ihre n8n-App und wechseln Sie in den Bereich „App Configs“. Scrollen Sie anschließend zum Abschnitt „Persistent Directories“. Hier füllen Sie zwei Felder aus:
- Path in Container:
/home/node/.n8n(der Standard-Speicherort von n8n im Container) - Label (Volume Name): z. B.
n8n-data(CapRover stellt diesem Label automatischcaptain--voran und verwaltet das Volume unter/var/lib/docker/volumes/captain--n8n-data/_dataauf Ihrem Server)
Alternativ können Sie statt eines Labels einen konkreten Host-Pfad (z. B. /captain-data/n8n) angeben. Achten Sie in diesem Fall darauf, dass das Verzeichnis vor dem Speichern bereits auf dem Server existiert. Klicken Sie anschließend auf „Save & Update“, damit das Volume gemountet und die App neu gestartet wird.
In Spezialfällen nutzen Sie nicht den Bereich „Persistent Directories“, sondern führen die Konfiguration über den Bereich „Service Update Override“ durch. Tragen Sie hier dann folgenden Inhalt ein:
{
"TaskTemplate": {
"ContainerSpec": {
"Mounts": [
{
"Type": "volume",
"Source": "captain--n8n-data",
"Target": "/home/node/.n8n"
}
]
}
}
}Ohne persistenten Speicher gehen alle n8n-Daten bei einem Neustart verloren.
Dieses Verzeichnis ist der Standard-Speicherort von n8n innerhalb des Containers. Hier werden unter anderem Ihre Workflows, Credentials, Verschlüsselungsdaten und weitere Konfigurationen abgelegt. Durch die Verknüpfung mit einem persistenten Volume stellt CapRover sicher, dass diese Daten auch nach Updates, Neustarts oder Deployments erhalten bleiben.
Speichern Sie die Änderung und starten Sie die App anschließend neu, damit die Konfiguration aktiv wird.
Wenn Sie später Backups erstellen möchten, ist genau dieses Verzeichnis besonders wichtig. Es empfiehlt sich daher, regelmäßig Sicherungen dieses Speicherorts anzulegen oder in ein externes Backup-System einzubinden.
Schritt 7: n8n aufrufen und einrichten
Nach dem erfolgreichen Deployment können Sie Ihre n8n-Instanz über die zuvor konfigurierte Domain im Browser aufrufen:
https://n8n.IHRE-DOMAINStellen Sie sicher, dass die Domain korrekt eingerichtet ist und das SSL-Zertifikat aktiv ist, damit der Zugriff problemlos funktioniert. Falls die Seite nicht sofort erreichbar ist, kann es helfen, einige Minuten zu warten oder den Browser-Cache zu leeren, da DNS-Änderungen manchmal verzögert greifen.
Beim ersten Aufruf werden Sie durch den Einrichtungsprozess von n8n geführt. Dabei legen Sie zunächst einen Administrator-Benutzer an, bestehend aus E-Mail-Adresse und Passwort. Diese Zugangsdaten benötigen Sie künftig für den Login, daher sollten Sie ein sicheres Passwort wählen und die Daten gut aufbewahren.
Nach der erfolgreichen Registrierung gelangen Sie direkt in das n8n-Dashboard. Hier können Sie sofort mit der Erstellung Ihres ersten Workflows beginnen, Nodes hinzufügen und Integrationen mit externen Diensten einrichten. Die Benutzeroberfläche ist visuell aufgebaut, sodass Sie Automatisierungen per Drag-and-Drop zusammenstellen können.
Schritt 8: Wichtige Umgebungsvariablen konfigurieren
Für den produktiven Einsatz sollten Sie Ihre n8n-Instanz zusätzlich absichern und konfigurieren. Dies erfolgt über sogenannte Umgebungsvariablen, mit denen Sie zentrale Funktionen wie Verschlüsselung und Zugriffsschutz steuern.
Öffnen Sie dazu im CapRover-Dashboard Ihre n8n-App und wechseln Sie in den Bereich „App Configs“. Dort finden Sie den Abschnitt „Environment Variables“, in dem Sie neue Variablen hinzufügen können.
Fügen Sie beispielsweise folgenden Eintrag hinzu:
N8N_ENCRYPTION_KEY=xyz123

Die Variable N8N_ENCRYPTION_KEY ist besonders wichtig, da sie zur Verschlüsselung sensibler Daten wie Credentials verwendet wird. Verwenden Sie hier anstatt unseres Beispiels unbedingt einen langen, zufälligen und sicheren Schlüssel. Wenn dieser Schlüssel verloren geht oder geändert wird, können gespeicherte Zugangsdaten nicht mehr entschlüsselt werden. Unter Linux können Sie einen passenden Schlüssel beispielsweise ganz einfach mit OpenSSL erzeugen, indem Sie openssl rand -hex 32 nutzen.
Speichern Sie die Änderungen und starten Sie die App anschließend neu, damit die neuen Einstellungen übernommen werden. Danach ist Ihre n8n-Instanz besser abgesichert und für den produktiven Betrieb vorbereitet.
Für zeitgesteuerte n8n-Workflows, beispielsweise mit einem Schedule-Trigger, sollten Sie zusätzlich die korrekte Zeitzone konfigurieren. Andernfalls kann es zu unerwarteten Ausführungszeiten kommen. Fügen Sie dazu folgende Umgebungsvariablen hinzu:
TZ=Europe/BerlinGENERIC_TIMEZONE=Europe/Berlin
Diese Einstellungen stellen sicher, dass n8n Zeitangaben korrekt interpretiert und geplante Workflows zuverlässig zur gewünschten Uhrzeit ausgeführt werden.

