Introducere – Ce este Node-RED?
Node-RED este un mediu de programare bazat pe flow-uri si poate fi folosit in automatizari si aplicatii IoT. Este bazat pe javascript si are integrari cu diverse alte aplicatii si servicii.
Instalare
Pentru instalare avem nevoie de un VPS cu docker instalat.
Se creaza un volum nou pentru stocarea datelor:
docker volume create --name node_red_data
docker volume ls
DRIVER VOLUME NAME
local node_red_data
Se descarca si se ruleaza imaginea docker:
docker run --restart=always -it -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-red
Noul container se va numi „mynodered”, acest nume poate fi modificat dupa preferinte
Dupa ce a fost finaliazata executia, aplicatia poate fi accesata folosind un browser la adresa http://:1880
Securizare / parola admin
Dupa cum ai observat la pasul anterior interfata de administrare poate fi accesata fara parola. Este foarte posibil sa nu fie chiar ceea ce-ti doresti.
Iata cum poti parola interfata de administrare a node-red:
Generarea hash-ului parolei:
docker exec -it mynodered node-red-admin hash-pw
Vei fi intrebat ce parola vrei sa utilizezi iar apoi va returna hash-ul:
root@node-red-install:~# docker exec -it mynodered node-red-admin hash-pw
Password:
$2b$08$xOO8rlU.3RzKhi5AjrTq4ujm01f8EdNCTtNvHNH9doVSaK2zaVhxO
Cu un editor text, deschide fisierul settings.js pentru a seta parola:
cd /var/lib/docker/volumes/node_red_data/_data
nano settings.js
Cauta sectiunea de stabilire a parolei, aceasta arata cam asa:
Scoate comentariile si inlocuieste hash-ul existent cu cel generat anterior
CTRL + x pentru save si exit

Restarteaza node-red:
docker restart mynodered
In acest moment accesarea panoului node-red se poate face doar cu parola configurata:
Backup
Deseori este o idee buna sa ai backup. Poti salva datele instantei node-red folosind comanda:
docker cp mynodered:/data /cale/catre/backup
De exemplu:
root@node-red-install:~# docker cp mynodered:/data /root/backup1
root@node-red-install:~# cd backup1/
root@node-red-install:~/backup1# ls
flows.json lib node_modules package.json settings.js