NPM ist ein Software Package Manager für Javascript-Laufzeitumgebungen. Mit dem können sehr einfach weitere Module, Funktionen, Steuerelemente, grafische Elemente usw. hinzugefügt werden. Dh. Node-Red ist die Core-Komponente unter der alles läuft.
Typischerweise ist Node-Red unter „<IP-Adresse>:1880“ erreichbar und die Weboberfläche sieht dann wie folgt aus :
An der linken Bildschirmseite sehen wir die ganzen aktuell installieren Javascript Funktionen, Module usw. Diese können jederzeit erweitert werden.
Eine Übersicht gibt es hier : https://npms.io/
Nun gibt es ein großes Problem was den NPM-Manager angeht. Oft weiß man nicht ob der Node-Red Server unter dem Benutzer „root“ oder „pi“ läuft auf einem Raspberry Pi.
Um den Nodes-Package-Manager nutzen zu können muss dieser noch installiert werden:
sudo apt-get install npm
Üblicherweise gibt es ein Verzeichnis „$HOME/.node-red/node_modules“ in dem die NPM-Packages installiert werden. Manchmal muss man „sudo npm install <Package-Name>“ und wundert sich warum die neu installierten Module in Node-Red nicht sichtbar sind. Nun hierfür gibt es eine sehr elegante Lösung und zwar den „Node-Red-Admin CLI“.
Installiert wird er wie folgt :
npm install -g node-red-admin oder auch mit $ sudo npm install -g node-red-admin
Es existiert dann ein Command Line Tool „node-red-admin“ auf der SSH Konsole. Eine einfache Eingabe zeigt folgenden Hilfstext :
Usage: node-red-admin <command> [args] [--help] Description: Node-RED command-line client Commands: target login list info enable disable search install remove hash-pw
Die Erklärung im Detail:
list
– List all of the installed nodesinfo
– Display more information about the module or node setenable
– Enable the specified module or node setdisable
– Disable the specified module or node setsearch
– Search NPM for Node-RED modules relating to the search-term giveninstall
– Install a module from NPMremove
– Remove an NPM modulehash-pw
– Create a password hash that can be used with theadminAuth
andhttpNodeAuth
settings
Dh. wenn wir jetzt eine Erweiterung, in unserem Fall „node-red-contrib-ui“, per NPM installieren möchten geben wir folgendes ein :
node-red-admin install node-red-contrib-ui node-red-admin list
Das „list“ Command zeigt uns, welche Erweiterungen installiert sind. Darüber hinaus lässt sich Node-Red absichern mit einem Passwort und Benutzername, für die Anmeldung benutzen wir:
node-red-admin login
Mit diesem Tool kann man sicher sein, dass die gewünschten Erweiterungen richtig installiert werden.
Viel Spaß beim programmieren , Joachim