Cum instalezi Node-RED in cloud

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 :slightly_smiling_face:

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 :slightly_smiling_face:

Restarteaza node-red:

docker restart mynodered

In acest moment accesarea panoului node-red se poate face doar cu parola configurata:
image-2

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