Nachdem Node-RED in Node.js implementiert ist genügt ein einfaches Kommando um es zu installieren und zu starten. Voraussetzung ist ein installierts node und npm. Idealerweise node 12 LTS oder höher.
Einfache Installation zum Testen
# Installieren
sudo npm install -g --unsafe-perm node-red
# Starten
node-red
Somit ist das System ungeschützt auf Deinem Server am Port 1880 verfügbar: http://DEINSERVER:1880/
Server Installation
Am Server willst Du sicherlich node-red als service ausführen. Dazu gibts die Installation mittels script:
# Installation
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
# Autostart nach dem boot
sudo systemctl enable nodered.service
Das was schon. Danach kannst Du das service starten, stoppen, …
service nodered start
service nodered stop
service nodered restart
Du solltes nun
- Username/Passwort Authentication konfigurieren
- einen Reverseproxy für den Port 1880 konfigurieren
- HTTPS für die website installieren
Einfache Konfiguration
Viel muss man nicht machen. Es genügt im ~/.node-red/settings.js die Projekcts einzuschalten. Suche nach editorTheme und projects und setze enabled: true.
Starte nun den service neu. Und das wars auch schon
service nodered restart
Username/Passwort Authentication
Bearbeite das Settings-File mittels nano ~/.node-red/settings.js
und füge folgenden Code ein und ersetze den HASHWERT durch die Anweisungen danach:
adminAuth: {
type: "credentials",
users: [
{
username: "admin",
password: "HASHWERT",
permissions: "*"
},
{
username: "benutzer1",
password: "HASHWERT",
permissions: "read"
}
]
},
Den Hashwert für das Passwort des jeweiligen Benutzers bekomsmt Du durch den Kommandozeilenbefehl:
node-red admin hash-pw
Wichtige Verzeichnisse
Im home Verzeichnis des Benutzers gibt es das Verzeichnis .node-red
. Dort sind alle wichtigen Konfigurationen inklusive der Flows, Nodes, Datenbanken, etc.
Dieses Verzeichnis ist auch zum Backup geeignet.
Debugging
Wenn einmal etws nicht so funktioniert wie es soll hast Du mehrere Dinge die Du tun kannst.
- Füge einen catch-Node ein und schreib den Output in das Node-RED Debug Fenster
- Wenn Du ein Node-RED als Service ausführst kannst Du
systemctl status nodered
in der Kommandozeileauf aufrufen um den Konsolen Output zu sehen.
Updaten
Dadurch dass nodered eine Node.js Applikation ist, geht das updaten denkbar einfach.
Bevor Du jedoch updatest sieh Dir die Release Nodes an. Normalerweise findest Du auch gute Infos auf deren offiziellem Blog.
Um die aktuelle Version heraus zu finden gib einfach folgendes ein:
node-red --help
Zum upgraden musst DU lediglich ein normales Install durchführen:
sudo npm install -g --unsafe-perm node-red
Falls Du das Skript für die Server Installation genutzt hattest, kannst Du auch einfach dasselbe nochmals starten:
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
service nodered start