50% di sconto tutti i piani, offerta a tempo limitato. A partire da $2.48/mo
Node-RED

Node-RED

Node-RED è uno strumento di programmazione visuale basato su flussi. Collega la logica tramite drag-and-drop per IoT, APIs e pipeline di home automation, con oltre 4000 nodi creati dalla community. Sviluppato da IBM, progetto della OpenJS Foundation, è il motore di automazione di riferimento nell'IoT industriale.

Versione

Più recente

Sistema Operativo

Server Ubuntu 24.04 LTS

RAM minimo

1 GB

Tipi IP

IPV4,IPV6

Accedere a Node-RED

  • Apri il browser e visita: https://<SERVER_IP>
  • Un avviso SSL del browser è previsto (certificato self-signed)
  • È richiesta l'autenticazione (popup Basic Auth)
  • Metodo di autenticazione: HTTP Basic Auth
  • Le credenziali sono salvate in modo sicuro in: /root/.cloudzy-creds

File e directory principali

  • La directory di installazione principale è /root/node-red.
  • Il file di orchestrazione Docker si trova in /root/node-red/docker-compose.yml.
  • I dati persistenti di Node-RED sono salvati in /var/lib/docker/volumes/node-red_node-red-data/_data.
  • Il file di configurazione di Nginx si trova in /etc/nginx/sites-available/node-red.
  • Le credenziali di autenticazione base sono salvate in /etc/nginx/auth/node-red.htpasswd.
  • I certificati TLS sono salvati in /etc/nginx/ssl.

Gestione dei servizi

Controlla lo stato del container:

docker ps

Visualizza log:

docker compose -f /root/node-red/docker-compose.yml logs -f

Riavviare Node-RED:

docker compose -f /root/node-red/docker-compose.yml restart

Riavvia Nginx:

systemctl restart nginx

Utente amministratore di Node-RED (alternativa all'autenticazione base)

Node-RED dispone di un proprio sistema di autenticazione interno, che può sostituire HTTP Basic Auth.

1. Individuare settings.js

Il file di configurazione principale si trova nel volume Docker di Node-RED: /var/lib/docker/volumes/node-red_node-red-data/_data/settings.js

2. Abilita adminAuth

Apri settings.js e decommenta (o aggiungi) la sezione adminAuth La sezione dovrebbe apparire più o meno così:

  adminAuth: {
      type: "credentials",
      users: [
          {
              username: "admin",
              password: "<HASHED_PASSWORD>",
              permissions: "*"
      }]
  },

3. Genera un hash della password

Puoi generare l'hash dall'interno del container Node-RED:

docker exec -it node-red-node-red-1 node-red admin hash-pw

Ti verrà chiesto di inserire la password in chiaro.

Copia l'hash ottenuto e incollalo come password valore in settings.js.

4. Riavvia Node-RED

Dopo la modifica settings.js:

docker compose -f /root/node-red/docker-compose.yml restart

5. Disabilita l'autenticazione base HTTP in Nginx (Opzionale)

Modifica il file del sito Nginx: /etc/nginx/sites-available/node-red

Rimuovi o commenta queste righe:

auth_basic "Restricted";
auth_basic_user_file /etc/nginx/auth/node-red.htpasswd;

Ricarica Nginx:

systemctl restart nginx

Abilitare SSL con un dominio

1. Punta il tuo dominio all'IP del server.

2. Modifica la configurazione Nginx e sostituisci entrambi server_name <IP>; con il tuo dominio (<your-domain>) per i blocchi HTTP (porta 80) e HTTPS (porta 443):

vim /etc/nginx/sites-available/node-red

3. Installa Certbot:

apt install -y certbot python3-certbot-nginx

4. Esegui il seguente comando per generare un certificato Let's Encrypt valido:

certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com

5. Sostituisci i percorsi SSL nella configurazione Nginx:

vim /etc/apache2/sites-available/node-red
# Before:
    # ssl_certificate /etc/nginx/ssl/fullchain.pem;
    # ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
    # ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    # ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

6. Riavvia Nginx per applicare le modifiche:

systemctl restart nginx

7. Apri il browser e visita: https://yourdomain.com

Altri strumenti di sviluppo

App correlate.

Deploy Node-RED ora. A partire da $2,48/mese.