50% korting alle plannen, beperkte tijd. Vanaf $2.48/mo
Knooppunt-ROOD

Knooppunt-ROOD

Node-RED is een op visuele flow gebaseerde programmeertool. Logica voor slepen en neerzetten voor IoT, API's en pijplijnen voor thuisautomatisering, met meer dan 4000 communityknooppunten. Gebouwd door IBM, OpenJS Foundation-project, de standaard automatiseringsengine in industrieel IoT.

Versie

Nieuwste

Besturingssysteem

Ubuntu Server 24.04 LTS

Min. RAM

1 GB

IP-types

IPV4,IPV6

Toegang tot Node-RED

  • Open je browser en bezoek: https://<SERVER_IP>
  • Een SSL-waarschuwing in de browser is normaal (selfsigned certificaat)
  • Authenticatie is vereist (pop-up Basic Auth)
  • Verificatiemethode: HTTP Basisverificatie
  • Inloggegevens worden veilig opgeslagen in: /root/.cloudzy-creds

Belangrijke bestanden en mappen

  • De hoofdinstallatiemap is /root/node-red.
  • Docker-orkestratiebestand is /root/node-red/docker-compose.yml.
  • Persistente Node-RED-gegevens worden opgeslagen in /var/lib/docker/volumes/node-red_node-red-data/_data.
  • Het Nginx-configuratiebestand bevindt zich op /etc/nginx/sites-available/node-red.
  • Basisverificatiereferenties worden opgeslagen in /etc/nginx/auth/node-red.htpasswd.
  • TLS-certificaten worden opgeslagen in /etc/nginx/ssl.

Servicebeheer

Controleer containerstatus:

docker ps

Logs bekijken:

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

Start Node-RED opnieuw:

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

Start Nginx opnieuw:

systemctl restart nginx

Node-RED-beheerdersgebruiker (alternatief voor basisauthenticatie)

Node-RED heeft een eigen intern authenticatiesysteem, dat HTTP Basic Auth kan vervangen.

1. Lokaliseren settings.js

Het hoofdconfiguratiebestand bevindt zich in het Node-RED Docker-volume: /var/lib/docker/volumes/node-red_node-red-data/_data/settings.js

2. Inschakelen adminAuth

Open settings.js en verwijder het commentaar (of voeg het toe). adminAuth sectie. Het zou er ongeveer zo uit moeten zien:

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

3. Genereer een wachtwoordhash

Je kunt de hash genereren vanuit de Node-RED-container:

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

U wordt gevraagd uw gewone wachtwoord in te voeren.

Kopieer de resulterende hash en plak deze als de password waarde in settings.js.

4. Start Node-RED opnieuw

Na bewerking settings.js:

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

5. Schakel HTTP Basic Auth uit in Nginx (optioneel)

Bewerk het Nginx-sitebestand: /etc/nginx/sites-available/node-red

Verwijder of becommentarieer deze regels:

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

Nginx opnieuw laden:

systemctl restart nginx

SSL inschakelen met een domein

1. Wijs je domein naar het server-IP.

2. Pas de Nginx-config aan en vervang beide server_name <IP>; met je domein (<your-domain>) voor zowel de HTTP-blokken (poort 80) als de HTTPS-blokken (poort 443):

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

3. Installeer Certbot:

apt install -y certbot python3-certbot-nginx

4. Voer het volgende commando uit om een geldig Let's Encrypt-certificaat te genereren:

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

5. Vervang de SSL-paden in de Nginx-config:

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. Herstart Nginx om de wijzigingen door te voeren:

systemctl restart nginx

7. Open je browser en bezoek: https://yourdomain.com

Meer in Development-tools

Gerelateerde apps.

Implementeer Node-RED nu. Vanaf $2,48/mnd.