Chuyển đến nội dung chính
Giảm 50% tất cả các gói, có thời hạn. Khởi điểm từ $2.48/mo
Node-RED

Node-RED

Node-RED là công cụ lập trình trực quan dạng luồng. Kéo thả để xây dựng logic cho IoT, APIs và các pipeline tự động hóa nhà thông minh, với hơn 4000 node cộng đồng. Được phát triển bởi IBM, thuộc OpenJS Foundation, đây là engine tự động hóa tiêu chuẩn trong công nghiệp IoT.

Tổng quan

23.3k

Sao GitHub

240

Lượt xem trang

294

Cài đặt đang hoạt động

Giấy phép Apache-2.0 Phiên bản Latest OS Ubuntu Server 24.04 LTS Min RAM 1 GB IP IPV4,IPV6

Cài đặt đang hoạt động là dữ liệu mẫu (xem trước); số liệu thực sẽ được kết nối trước khi ra mắt.

Truy cập Node-RED

  • Mở trình duyệt và truy cập: https://<SERVER_IP>
  • Cảnh báo SSL trên trình duyệt là điều dự kiến (chứng chỉ tự ký)
  • Yêu cầu xác thực (cửa sổ Basic Auth)
  • Phương thức xác thực: HTTP Basic Auth
  • Thông tin đăng nhập được lưu trữ bảo mật tại: /root/.cloudzy-creds

File và thư mục quan trọng

  • Thư mục cài đặt chính là /root/node-red.
  • Tệp orchestration của Docker nằm tại /root/node-red/docker-compose.yml.
  • Dữ liệu Node-RED lâu dài được lưu trữ tại /var/lib/docker/volumes/node-red_node-red-data/_data.
  • Tệp cấu hình Nginx nằm tại /etc/nginx/sites-available/node-red.
  • Thông tin xác thực cơ bản được lưu tại /etc/nginx/auth/node-red.htpasswd.
  • Chứng chỉ TLS được lưu tại /etc/nginx/ssl.

Quản lý dịch vụ

Kiểm tra trạng thái container:

docker ps

Xem log:

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

Khởi động lại Node-RED:

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

Khởi động lại Nginx:

systemctl restart nginx

Tài khoản Admin Node-RED (Thay thế cho Basic Auth)

Node-RED có hệ thống xác thực nội bộ riêng, có thể thay thế HTTP Basic Auth.

1. Xác định vị trí settings.js

Tệp cấu hình chính nằm bên trong volume Docker của Node-RED: /var/lib/docker/volumes/node-red_node-red-data/_data/settings.js

2. Bật adminAuth

Mở settings.js và bỏ ghi chú (hoặc thêm) phần adminAuth Nội dung sẽ trông giống như sau:

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

3. Tạo hash mật khẩu

Bạn có thể tạo hash từ bên trong container Node-RED:

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

Bạn sẽ được nhắc nhập mật khẩu dạng văn bản thuần.

Sao chép hash vừa tạo và dán vào trường password giá trị trong settings.js.

4. Khởi động lại Node-RED

Sau khi chỉnh sửa settings.js:

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

5. Tắt xác thực cơ bản HTTP trong Nginx (Tùy chọn)

Chỉnh sửa file site Nginx: /etc/nginx/sites-available/node-red

Xóa hoặc comment out các dòng sau:

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

Tải lại Nginx:

systemctl restart nginx

Kích hoạt SSL với một tên miền

1. Trỏ tên miền của bạn về IP máy chủ.

2. Sửa cấu hình Nginx và thay thế cả server_name <IP>; với tên miền của bạn (<your-domain>) cho cả block HTTP (cổng 80) và HTTPS (cổng 443):

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

3. Cài đặt Certbot:

apt install -y certbot python3-certbot-nginx

4. Chạy lệnh sau để tạo một chứng chỉ Let’s Encrypt hợp lệ:

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

5. Thay thế các đường dẫn SSL trong cấu hình 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. Khởi động lại Nginx để áp dụng thay đổi:

systemctl restart nginx

7. Mở trình duyệt và truy cập: https://yourdomain.com

Thêm trong Công cụ phát triển

Ứng dụng liên quan.

Triển khai Node-RED ngay. Từ $2.48/tháng.