Kapitel 10/Free Rhohtext.md aktualisiert
This commit is contained in:
@@ -27,3 +27,246 @@ Wie immer setzen wir kein technisches Vorwissen voraus. Alles, was du für diese
|
||||
|
||||
---
|
||||
|
||||
## Voraussetzungen & Ressourcen
|
||||
|
||||
Bevor du mit der Installation von n8n beginnst, solltest du sicherstellen, dass dein System korrekt vorbereitet ist. In diesem Abschnitt definieren wir die nötigen Ressourcen für den LXC-Container und klären, welche technischen Voraussetzungen erfüllt sein müssen, damit alle späteren Schritte funktionieren.
|
||||
|
||||
### Container-Ressourcen
|
||||
|
||||
Für den n8n-Container legen wir folgende Ausstattung fest:
|
||||
|
||||
* **CPU: 2 vCPUs**
|
||||
Zwei virtuelle Prozessoren reichen für die Ausführung typischer n8n‑Workflows im Hintergrund.
|
||||
Falls du später viele parallele Abläufe oder aufwendige API-Abfragen nutzen möchtest, kannst du die CPU-Zahl bei Bedarf erhöhen.
|
||||
|
||||
* **RAM: 2 GB**
|
||||
Der Node.js-Prozess von n8n benötigt vergleichsweise wenig Arbeitsspeicher.
|
||||
Mit 2 GB läuft das System auch bei mehreren gleichzeitig aktiven Workflows stabil.
|
||||
Nur bei sehr großen Datenverarbeitungen (z. B. viele gleichzeitige Uploads oder komplexe Datenmanipulationen) kann mehr RAM sinnvoll sein.
|
||||
|
||||
* **Speicherplatz: 10 GB**
|
||||
Dieser Platz reicht für die Grundinstallation, Logdateien und temporäre Workflow-Daten.
|
||||
Da n8n keine großen Medien speichert, ist der Speicherbedarf überschaubar.
|
||||
Wenn du viele eigene Skripte oder große JSON-Daten verarbeitest, kannst du den Container später vergrößern.
|
||||
|
||||
* **Betriebssystem: Ubuntu 24.04 LTS (64‑Bit)**
|
||||
Wir setzen hier auf Ubuntu, da es moderne Pakete für Node.js bereitstellt und sich gut für die manuelle Installation eignet.
|
||||
Zudem verwenden wir Node.js ≥ 18.x, was unter Ubuntu besonders gut unterstützt wird.
|
||||
|
||||
* **Netzwerk: Feste IP-Adresse per DHCP-Reservierung**
|
||||
Wie in Kapitel 1 beschrieben, richtest du im Router eine DHCP-Reservierung für den Container ein.
|
||||
So bleibt er immer unter derselben Adresse erreichbar und kann später korrekt im Proxy Manager eingebunden werden.
|
||||
|
||||
[!TIP]
|
||||
Plane beim Erstellen des Containers genug Reserven ein – auch wenn n8n anfangs wenig verbraucht.
|
||||
Gerade wenn du das System später für Uploads, VOD-Verarbeitung oder komplexe Kalenderanalysen nutzt, steigen RAM- und CPU-Anforderungen deutlich.
|
||||
|
||||
### Technische Voraussetzungen
|
||||
|
||||
Dieses Kapitel baut auf der bestehenden UCC-Grundstruktur auf. Folgende Komponenten solltest du bereits eingerichtet haben:
|
||||
|
||||
* **Proxmox läuft stabil** (Kapitel 1)
|
||||
Der LXC-Container für n8n wird direkt dort erstellt und verwaltet.
|
||||
|
||||
* **Nginx Proxy Manager ist eingerichtet** (Kapitel 3)
|
||||
Darüber wird n8n später mit Subdomain, HTTPS und Zertifikat erreichbar gemacht.
|
||||
|
||||
* **Domain oder DynDNS-Adresse ist vorhanden** (Kapitel 4)
|
||||
Für die öffentliche Erreichbarkeit und Let's Encrypt brauchst du eine gültige Subdomain, z. B. `n8n.deinprojekt.de`.
|
||||
|
||||
* **Zugriff auf das Container-Terminal**
|
||||
Du benötigst entweder direkten Zugriff über die Proxmox-Konsole oder per SSH auf den Container.
|
||||
|
||||
[!IMPORTANT]
|
||||
Wenn du n8n nur im lokalen Netzwerk einsetzen möchtest, kannst du den Container auch ohne Domain und HTTPS betreiben. Die Anleitung funktioniert in diesem Fall ebenfalls – du musst später lediglich eigene Proxy-Regeln anpassen.
|
||||
|
||||
### Software und Versionen
|
||||
|
||||
In diesem Kapitel installierst du alle benötigten Komponenten manuell – ohne Docker, vollständig nachvollziehbar:
|
||||
|
||||
* **Node.js** – ab Version 18.x (erforderlich für aktuelle n8n-Releases)
|
||||
* **npm** – Node Package Manager, wird automatisch mit Node.js installiert
|
||||
* **n8n** – Automatisierungstool, wird systemweit per `npm install -g` eingerichtet
|
||||
* **PM2** – Prozessmanager, sorgt für dauerhaften Hintergrundbetrieb und Autostart
|
||||
|
||||
Alle Schritte erfolgen in der richtigen Reihenfolge und mit ausführlichen Erklärungen – du brauchst keine Vorkenntnisse im Umgang mit Node.js oder JavaScript.
|
||||
|
||||
[!TIP]
|
||||
Die direkte Installation ohne Docker erhöht die Transparenz. Du behältst volle Kontrolle über die Dateien, Logs und Prozesse – und kannst das System bei Bedarf gezielt sichern oder migrieren.
|
||||
|
||||
---
|
||||
|
||||
## Schritt 1 – Grundsystem aktualisieren
|
||||
|
||||
Bevor wir mit der Installation von n8n beginnen, sorgen wir dafür, dass das Betriebssystem im Container auf dem neuesten Stand ist.
|
||||
Das ist wichtig, um Fehler durch veraltete Pakete zu vermeiden und eine stabile Grundlage für die weiteren Schritte zu schaffen.
|
||||
|
||||
Öffne dazu in Proxmox die **Shell** des n8n-Containers.
|
||||
Wähle in der linken Seitenleiste den Container aus und klicke auf **Shell**.
|
||||
|
||||
👉 Screenshot geeignet: Proxmox – Container ausgewählt und Konsole geöffnet
|
||||
|
||||
Gib anschließend den folgenden Befehl ein, um alle Paketlisten zu aktualisieren und die verfügbaren Updates zu installieren.
|
||||
Starte danach den Container neu, damit die Aktualisierungen aktiv werden:
|
||||
|
||||
```bash
|
||||
apt update && apt upgrade -y
|
||||
reboot
|
||||
```
|
||||
|
||||
[!NOTE]
|
||||
Führe diesen Schritt auch dann durch, wenn der Container gerade erst erstellt wurde.
|
||||
Ein aktuelles Grundsystem verhindert spätere Konflikte bei der Installation von Node.js und n8n.
|
||||
|
||||
## Schritt 2 – Node.js & n8n installieren
|
||||
|
||||
Nach dem Update ist das System bereit für die Installation der benötigten Software.
|
||||
n8n basiert auf Node.js, daher müssen wir zunächst Node.js und den zugehörigen Paketmanager **npm** einrichten.
|
||||
Anschließend installieren wir n8n selbst sowie den Prozessmanager **PM2**, damit n8n dauerhaft im Hintergrund laufen kann.
|
||||
|
||||
### Benutzer wechseln
|
||||
|
||||
Wir installieren n8n nicht mit Administrator-Rechten, sondern unter einem eigenen Benutzerkonto.
|
||||
Melde dich daher mit dem Benutzer an, den du in Schritt 1 erstellt hast:
|
||||
|
||||
```bash
|
||||
su - n8nuser
|
||||
```
|
||||
|
||||
👉 Screenshot geeignet: Konsole – Anmeldung als Benutzer `n8nuser`
|
||||
|
||||
### Node.js installieren
|
||||
|
||||
Zuerst fügen wir das offizielle NodeSource-Repository hinzu, um die aktuelle Version (mindestens 18.x) zu erhalten, und installieren dann Node.js und npm:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
|
||||
sudo apt install -y nodejs
|
||||
```
|
||||
|
||||
Prüfe nach der Installation die Versionen:
|
||||
|
||||
```bash
|
||||
node -v
|
||||
npm -v
|
||||
```
|
||||
|
||||
Die angezeigten Versionsnummern sollten mindestens `v18.x` für Node.js und eine aktuelle npm-Version zeigen.
|
||||
|
||||
[!NOTE]
|
||||
Falls eine deutlich ältere Version angezeigt wird, wiederhole die Installation oder kontrolliere die Repository-Adresse.
|
||||
|
||||
### n8n und PM2 installieren
|
||||
|
||||
Installiere nun n8n und den Prozessmanager PM2 global über npm:
|
||||
|
||||
```bash
|
||||
sudo npm install -g n8n pm2
|
||||
```
|
||||
|
||||
Mit PM2 stellst du sicher, dass n8n auch nach einem Neustart automatisch startet.
|
||||
|
||||
Überprüfe anschließend, ob n8n korrekt installiert wurde:
|
||||
|
||||
```bash
|
||||
n8n --version
|
||||
```
|
||||
|
||||
Die Ausgabe zeigt die aktuell installierte n8n-Version an.
|
||||
|
||||
[!TIP]
|
||||
PM2 sorgt dafür, dass n8n später automatisch als Hintergrunddienst läuft.
|
||||
Die Konfiguration dafür nehmen wir im nächsten Schritt vor.
|
||||
|
||||
## Schritt 3 – n8n als Dienst einrichten und starten
|
||||
|
||||
Damit n8n nicht nur manuell über die Konsole gestartet werden kann, richten wir den automatischen Start mit **PM2** ein.
|
||||
So läuft n8n dauerhaft im Hintergrund und wird bei jedem Neustart des Containers automatisch geladen.
|
||||
|
||||
### n8n erstmals starten
|
||||
|
||||
Starte n8n zunächst einmalig, um sicherzustellen, dass es fehlerfrei läuft:
|
||||
|
||||
```bash
|
||||
n8n
|
||||
```
|
||||
|
||||
Die Konsole zeigt nun Startmeldungen von n8n an und wartet anschließend auf Anfragen.
|
||||
Beende den Prozess wieder mit der Tastenkombination `Strg + C`.
|
||||
|
||||
👉 Screenshot geeignet: Konsole – n8n erfolgreich gestartet und wartet auf Anfragen
|
||||
|
||||
### PM2 einrichten
|
||||
|
||||
Mit PM2 starten wir n8n als Hintergrundprozess:
|
||||
|
||||
```bash
|
||||
pm2 start n8n
|
||||
```
|
||||
|
||||
Damit n8n automatisch beim Systemstart geladen wird, registriere den PM2-Startdienst:
|
||||
|
||||
```bash
|
||||
pm2 startup
|
||||
sudo env PATH=$PATH:/usr/bin pm2 startup systemd -u n8nuser --hp /home/n8nuser
|
||||
pm2 save
|
||||
```
|
||||
|
||||
* `pm2 startup` zeigt den notwendigen Befehl für den Autostart an.
|
||||
* Mit `pm2 save` speicherst du die aktuelle PM2-Prozessliste.
|
||||
|
||||
### Dienststatus prüfen
|
||||
|
||||
Überprüfe, ob n8n nun im Hintergrund läuft:
|
||||
|
||||
```bash
|
||||
pm2 list
|
||||
```
|
||||
|
||||
Die Ausgabe sollte den Prozess `n8n` mit dem Status **online** anzeigen.
|
||||
|
||||
[!NOTE]
|
||||
Ab diesem Punkt läuft n8n automatisch im Hintergrund und wird bei jedem Neustart des Containers selbstständig gestartet.
|
||||
|
||||
## Schritt 4 – n8n im Nginx Proxy Manager einbinden
|
||||
|
||||
Öffne den **Nginx Proxy Manager** und lege einen neuen Proxy-Host für n8n an.
|
||||
|
||||
1) **Anmelden** im NPM-Dashboard
|
||||
👉 Screenshot geeignet: NPM – Dashboard nach Login
|
||||
|
||||
2) Klicke auf **Add Proxy Host**
|
||||
|
||||
3) Trage im Reiter **Details** folgende Werte ein:
|
||||
|
||||
| Feld | Wert / Auswahl |
|
||||
|--------------------------------|------------------------------------------|
|
||||
| **Domain Names** | `n8n.deinedomain.tld` |
|
||||
| **Scheme** | `http` |
|
||||
| **Forward Hostname / IP** | IP-Adresse des n8n-Containers |
|
||||
| **Forward Port** | `5678` |
|
||||
| **Block Common Exploits** | aktivieren |
|
||||
| **Websockets Support** | aktivieren |
|
||||
|
||||
👉 Screenshot geeignet: Formular „Add Proxy Host“ mit IP des n8n-Containers und Port 5678
|
||||
|
||||
4) Wechsle zu **SSL** und setze:
|
||||
|
||||
| Feld | Einstellung |
|
||||
|-----------------------------------|----------------------------|
|
||||
| **Request a new SSL Certificate** | aktivieren |
|
||||
| **Force SSL** | aktivieren |
|
||||
| **HTTP/2 Support** | aktivieren |
|
||||
|
||||
👉 Screenshot geeignet: SSL-Tab mit aktivierter Option „Force SSL“
|
||||
|
||||
5) Klicke **Save**, um den Proxy-Host anzulegen.
|
||||
|
||||
Nach wenigen Sekunden ist n8n über die gewählte Subdomain erreichbar, z. B.:
|
||||
`https://n8n.deinedomain.tld`
|
||||
|
||||
👉 Screenshot geeignet: Browser – n8n-Anmeldeseite über die Subdomain aufgerufen
|
||||
|
||||
[!TIP]
|
||||
Falls der Zugriff auch von außen möglich sein soll, muss im Router Port 443 auf den NPM-Host weitergeleitet werden.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user