50% off усі тарифи, обмежений час. Починаючи від $2.48/mo
Node-RED

Node-RED

Node-RED — це інструмент візуального програмування на основі потоків. Логіка перетягування для IoT, API та автоматизації домашніх систем, із понад 4000 вузлів від спільноти. Розроблений IBM, проєкт фонду OpenJS Foundation — стандартний рушій автоматизації в промисловому IoT.

Version

Latest

Operating System

Ubuntu Server 24.04 LTS

Min. RAM

1 GB

IP Types

IPV4,IPV6

Підключення до Node-RED

  • Відкрийте браузер і перейдіть за адресою: https://<SERVER_IP>
  • Попередження браузера SSL очікується (самопідписний сертифікат)
  • Потрібна автентифікація (спливаюче вікно Basic Auth)
  • Метод автентифікації: HTTP Basic Auth
  • Облікові дані зберігаються в захищеному вигляді в: /root/.cloudzy-creds

Важливі файли та директорії

  • Головна директорія встановлення: /root/node-red.
  • Docker orchestration file is /root/node-red/docker-compose.yml.
  • Постійні дані Node-RED зберігаються в /var/lib/docker/volumes/node-red_node-red-data/_data.
  • Файл конфігурації Nginx розташований за адресою /etc/nginx/sites-available/node-red.
  • Облікові дані базової автентифікації зберігаються в /etc/nginx/auth/node-red.htpasswd.
  • Сертифікати TLS зберігаються в /etc/nginx/ssl.

Service Management

Перевірити статус контейнера:

docker ps

View logs:

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

Перезапустити Node-RED:

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

Restart Nginx:

systemctl restart nginx

Node-RED Адміністратор (альтернатива Basic Auth)

Node-RED має власну вбудовану систему автентифікації, яка може замінити HTTP Basic Auth.

1. Locate settings.js

Головний файл конфігурації знаходиться всередині тому Node-RED Docker: /var/lib/docker/volumes/node-red_node-red-data/_data/settings.js

2. Enable adminAuth

Open settings.js і розкоментуйте (або додайте) рядок adminAuth розділу. Це має виглядати приблизно так:

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

3. Згенеруйте хеш пароля

Ви можете згенерувати хеш усередині контейнера Node-RED:

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

Вам буде запропоновано ввести пароль у відкритому вигляді.

Скопіюйте отриманий хеш і вставте його як password value in settings.js.

4. Перезапустіть Node-RED

After editing settings.js:

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

5. Вимкнення базової автентифікації HTTP в Nginx (необов'язково)

Відредагуйте файл сайту Nginx: /etc/nginx/sites-available/node-red

Видаліть або закоментуйте ці рядки:

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

Reload Nginx:

systemctl restart nginx

Увімкнення SSL з власним доменом

1. Вкажіть ваш домен на IP-адресу сервера.

2. Відредагуйте конфігурацію Nginx і замініть обидва значення server_name <IP>; на ваш домен (<your-domain>) для блоків HTTP (порт 80) і HTTPS (порт 443):

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

3. Install Certbot:

apt install -y certbot python3-certbot-nginx

4. Виконайте наступну команду для отримання дійсного сертифіката Let's Encrypt:

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

5. Замініть шляхи SSL у конфігурації 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. Перезапустіть Nginx, щоб застосувати зміни:

systemctl restart nginx

7. Відкрийте браузер і перейдіть за адресою: https://yourdomain.com

Більше в розділі «Інструменти розробки»

Related apps.

Розгорнути Node-RED зараз. From $2.48/mo.