Node-RED lässt sich in wenigen Minuten auf fast jedem Rechner installieren, vom Windows-Laptop bis zum Raspberry Pi im Fabrikregal. Dieser Leitfaden führt durch jede Plattform, zeigt, wie Sie Node-RED als Dienst betreiben, sichert den Editor ab und endet mit einem funktionierenden ersten Flow, der einen echten MQTT-Broker abonniert, sodass Sie echte Nachrichten eintreffen sehen. In der Fertigung läuft Node-RED häufig auf einem Edge-PC neben der SPS, liest dort Maschinendaten etwa per OPC UA oder Modbus und speist sie in einen Unified Namespace (UNS) auf dem Broker ein.
Was Sie vor dem Start brauchen
Node-RED ist eine Node.js-Anwendung, daher ist die einzige echte Voraussetzung eine unterstützte Node.js-Version. Node-RED 4.x erfordert Node.js 18 oder neuer, und neuere Releases können dieses Minimum anheben; verwenden Sie daher nach Möglichkeit die aktuelle LTS-Version von Node.js. Außerdem brauchen Sie:
- Ein Benutzerkonto mit der Berechtigung, Software zu installieren (Administrator unter Windows,
sudounter Linux). - Netzwerkzugriff auf npm (die Paket-Registry von Node.js) während der Installation.
- Einen Browser, um den Editor auf Port 1880 zu öffnen.
| Plattform | Empfohlene Methode | Startet beim Booten | Typischer Einsatz |
|---|---|---|---|
| Windows 10/11 | Node.js-Installer + npm | Mit PM2 oder einem Service-Wrapper | Entwicklung, Edge-PCs |
| Debian / Ubuntu | Offizielles Installationsskript | Ja (systemd) | Server, Gateways |
| Raspberry Pi OS | Offizielles Installationsskript | Ja (systemd) | Edge-Gateways, Heimlabore |
| Jedes Betriebssystem mit Docker | Image nodered/node-red |
Ja (Restart-Policy) | Reproduzierbare Deployments |
Node-RED unter Windows installieren
- Laden Sie den LTS-Installer von Node.js (
.msi) von nodejs.org herunter und führen Sie ihn mit den Standardoptionen aus. Akzeptieren Sie die Option, Node.js zum PATH hinzuzufügen. - Öffnen Sie ein neues PowerShell-Fenster und prüfen Sie die Versionen:
node --version
npm --version
- Installieren Sie Node-RED global:
npm install -g --unsafe-perm node-red
- Starten Sie es:
node-red
Das Log endet mit einer Zeile wie Server now running at http://127.0.0.1:1880/. Öffnen Sie diese Adresse in Ihrem Browser, und der Editor erscheint. Ihre Flows und Einstellungen werden in C:\Users\<you>\.node-red gespeichert.
Damit Node-RED nach dem Schließen des Terminals weiterläuft und beim Booten startet, ist PM2 ein gängiger Ansatz:
npm install -g pm2
pm2 start "$env:APPDATA\npm\node_modules\node-red\red.js" --name node-red
pm2 save
Unter Windows braucht PM2 einen zusätzlichen Helfer wie pm2-installer oder einen Windows-Service-Wrapper, um beim Booten zu starten; folgen Sie dessen Anleitung oder nutzen Sie die Aufgabenplanung, um pm2 resurrect bei der Anmeldung auszuführen.
Node-RED unter Linux und auf dem Raspberry Pi installieren
Für Debian, Ubuntu und Raspberry Pi OS stellt das Node-RED-Projekt ein Installationsskript bereit, das eine passende Node.js-Version und Node-RED installiert und einen systemd-Dienst einrichtet. Führen Sie es als normaler Benutzer mit sudo-Rechten aus, nicht als root:
bash <(curl -sL https://github.com/node-red/linux-installers/releases/latest/download/update-nodejs-and-nodered-deb)
Das Skript stellt einige Fragen, unter anderem, ob eine vorhandene Node.js-Installation ersetzt und ob Pi-spezifische Nodes installiert werden sollen. Wenn es fertig ist, starten Sie Node-RED und aktivieren den Start beim Booten:
node-red-start # startet den Dienst und zeigt das Log an
sudo systemctl enable nodered.service
Nützliche Befehle für danach:
node-red-stop
node-red-restart
node-red-log
Rufen Sie dann http://<device-ip>:1880 im Browser auf. Die Adresse des Pi finden Sie mit hostname -I. Dasselbe Skript ist auch der einfachste Weg für spätere Upgrades: Führen Sie es erneut aus, und es aktualisiert Node.js und Node-RED direkt. Alle Details und Optionen finden Sie in der offiziellen Getting-Started-Dokumentation von Node-RED.
Auf anderen Distributionen installieren Sie Node.js LTS über Ihren Paketmanager oder NodeSource, führen sudo npm install -g --unsafe-perm node-red aus und erstellen dann Ihre eigene systemd-Unit.
Node-RED mit Docker installieren
Wenn Sie bereits Container nutzen, ist Docker die sauberste Option, denn Upgrades und Rollbacks sind nur Image-Tags:
docker volume create node_red_data
docker run -d --name nodered --restart unless-stopped \
-p 1880:1880 -v node_red_data:/data nodered/node-red:latest
Das Volume /data enthält Ihre Flows, Zugangsdaten und installierten Nodes, sodass sie Container-Upgrades überstehen. Für eine feste Version ersetzen Sie latest durch einen bestimmten Tag. Unser Leitfaden zu Node-RED mit Docker behandelt Docker Compose, Umgebungsvariablen und Backups.
Den Editor absichern, bevor Sie ihn freigeben
Standardmäßig hat der Editor kein Login. Auf 127.0.0.1 ist das in Ordnung, aber auf einem Raspberry Pi oder Server kann jeder im Netzwerk Port 1880 öffnen und über einen Function- oder Exec-Node beliebigen Code ausführen. Bevor Sie Node-RED in einem geteilten Netzwerk verwenden:
- Erzeugen Sie einen Passwort-Hash:
node-red admin hash-pw
- Bearbeiten Sie
settings.jsin Ihrem Benutzerverzeichnis (~/.node-red/settings.js) und aktivieren SieadminAuth:
adminAuth: {
type: "credentials",
users: [{
username: "admin",
password: "PASTE_THE_BCRYPT_HASH_HERE",
permissions: "*"
}]
},
- Setzen Sie in derselben Datei ein
credentialSecret, damit gespeicherte Zugangsdaten mit einem Schlüssel verschlüsselt werden, den Sie kontrollieren, und starten Sie Node-RED neu.
Zu HTTPS, Reverse Proxys und weiterer Härtung lesen Sie, wie Sie Node-RED absichern.
Ihr erster MQTT-Flow nach der Installation von Node-RED
Verbinden Sie Node-RED jetzt mit einem echten Broker. Der öffentliche MQTT-Broker unter broker.connectmq.com ist für Tests und Prototypen gedacht und akzeptiert anonyme Verbindungen, sodass Sie ohne Konto testen können. Verwenden Sie ein eindeutiges Topic-Präfix und denken Sie daran, dass der öffentliche Bereich für alle sichtbar ist.
Öffnen Sie im Editor das Menü (oben rechts), wählen Sie Import, fügen Sie das folgende JSON ein und klicken Sie auf Import:
[
{
"id": "c0a1b2c3d4e5f601",
"type": "mqtt-broker",
"name": "ConnectMQ public",
"broker": "broker.connectmq.com",
"port": "1883",
"clientid": "nodered-first-4d9e",
"autoConnect": true,
"usetls": false,
"protocolVersion": "4",
"keepalive": "60",
"cleansession": true,
"autoUnsubscribe": true
},
{
"id": "c0a1b2c3d4e5f602",
"type": "inject",
"name": "Send test reading",
"props": [{ "p": "payload" }, { "p": "topic", "vt": "str" }],
"repeat": "",
"once": false,
"topic": "connectmq/demo/4d9e/sensor",
"payload": "{\"temperature\":21.5}",
"payloadType": "json",
"x": 160,
"y": 80,
"wires": [["c0a1b2c3d4e5f603"]]
},
{
"id": "c0a1b2c3d4e5f603",
"type": "mqtt out",
"name": "Publish",
"topic": "",
"qos": "0",
"retain": "false",
"broker": "c0a1b2c3d4e5f601",
"x": 380,
"y": 80,
"wires": []
},
{
"id": "c0a1b2c3d4e5f604",
"type": "mqtt in",
"name": "Subscribe demo topics",
"topic": "connectmq/demo/4d9e/#",
"qos": "0",
"datatype": "auto-detect",
"broker": "c0a1b2c3d4e5f601",
"nl": false,
"rap": true,
"rh": 0,
"inputs": 0,
"x": 180,
"y": 160,
"wires": [["c0a1b2c3d4e5f605"]]
},
{
"id": "c0a1b2c3d4e5f605",
"type": "debug",
"name": "Show message",
"active": true,
"tosidebar": true,
"console": false,
"complete": "true",
"targetType": "full",
"x": 410,
"y": 160,
"wires": []
}
]
Ersetzen Sie 4d9e in der Client ID und in beiden Topics durch eigene zufällige Zeichen und klicken Sie dann auf Deploy. Die MQTT-Nodes zeigen einen grünen Status „connected“. Klicken Sie auf die Schaltfläche am Inject-Node, und die Debug-Seitenleiste zeigt die vollständige Nachricht, wobei payload dank der Auto-Detect-Einstellung bereits in ein Objekt geparst ist. Sie können auch aus einem anderen Tool publizieren, etwa mit mosquitto_pub -h broker.connectmq.com -p 1883 -i cli-4d9e -t connectmq/demo/4d9e/cli -m hello, und zusehen, wie die Nachricht ankommt.
Von hier aus behandelt das Node-RED-MQTT-Tutorial Topics, QoS, JSON-Verarbeitung und Dashboards im Detail.
Fehlerbehebung bei der Installation
node-redwird nicht erkannt (Windows): Schließen und öffnen Sie PowerShell erneut, damit der aktualisierte PATH geladen wird, oder prüfen Sie, ob%APPDATA%\npmim PATH steht.- Port 1880 ist bereits belegt: Eine andere Instanz läuft. Beenden Sie sie oder starten Sie mit
node-red -p 1881. - Editor von einem anderen Rechner aus nicht erreichbar: Prüfen Sie die Firewall und stellen Sie sicher, dass Node-RED nicht über
uiHostinsettings.jsnur an localhost gebunden ist. - MQTT-Nodes hängen bei „connecting“: Prüfen Sie den ausgehenden Zugriff auf Port 1883 und stellen Sie sicher, dass die Client ID nicht leer ist und von keinem anderen Client verwendet wird. Unser Leitfaden Node-RED MQTT verbindet sich nicht listet weitere Ursachen auf.
- Installationsskript scheitert auf einem alten Pi: Sehr alte Modelle mit ARMv6-CPUs werden von aktuellen Node.js-Builds unter Umständen nicht unterstützt; Hinweise finden Sie in der Ausgabe des Installers.
Vom öffentlichen Broker in die Produktion
Der öffentliche Broker ist ideal für einen ersten Flow, doch Produktions-Flows brauchen private Zugangsdaten und Verschlüsselung. Wechseln Sie auf Port 8883 mit TLS; das ist eine Checkbox und einige Felder im Broker-Konfigurations-Node, und unser Leitfaden zu Node-RED MQTT mit TLS führt Sie hindurch. Den Broker selbst zu betreiben, bedeutet Patches, Zertifikate und Kapazitätsplanung. Deshalb kombinieren viele Teams Node-RED mit einem verwalteten MQTT-Broker. ConnectMQ bietet Node-RED einen privaten Broker mit TLS auf 8883, im Portal generierten Zugangsdaten und einem Live-Topic-Explorer, mit dem Sie prüfen, was Ihre Flows publizieren. Für das Gesamtbild lesen Sie unseren Leitfaden zum Cloud-MQTT-Broker.
Ihre Node-RED-Flows auf ConnectMQ betreiben
Registrieren Sie sich unter app.connectmq.com, wählen Sie den kostenlosen Serverless-Plan ohne Kreditkarte, erstellen Sie einen Broker und fügen Sie den generierten Benutzernamen, das Passwort und die Client ID in Ihren mqtt-broker-Konfigurations-Node ein. Ihre neue Node-RED-Installation ist dann mit einem privaten, verschlüsselten ConnectMQ-Broker verbunden.
Häufig gestellte Fragen
Welche Node.js-Version brauche ich für Node-RED?
Node-RED 4.x erfordert Node.js 18 oder neuer. Verwenden Sie die aktuelle LTS-Version von Node.js, sofern Ihre Plattform keine besondere Einschränkung hat.
Wo speichert Node-RED meine Flows?
Im Benutzerverzeichnis, standardmäßig ~/.node-red unter Linux und macOS und C:\Users\<you>\.node-red unter Windows, bzw. /data im Docker-Container. Sichern Sie diesen Ordner einschließlich flows_cred.json.
Wie aktualisiere ich Node-RED?
Unter Debian, Ubuntu und Raspberry Pi OS führen Sie das Installationsskript erneut aus. Mit npm führen Sie npm install -g --unsafe-perm node-red aus. Mit Docker ziehen Sie ein neueres Image und erstellen den Container mit demselben Volume neu.
Kann ich Node-RED ohne Internetzugang installieren?
Ja, aber Sie müssen Node.js und die npm-Pakete auf einem anderen Rechner vorab herunterladen und übertragen oder anderswo ein Docker-Image bauen und laden. Für die spätere Verbindung zu einem Cloud-Broker ist natürlich ausgehender Netzwerkzugang nötig.



