تخطَّ إلى المحتوى الرئيسي
خصم ٥٠٪ جميع الخطط، لفترة محدودة. تبدأ من $2.48/mo
Node-RED

Node-RED

Node-RED أداة برمجة بصرية تعتمد على تدفق البيانات. صمّم منطق تطبيقاتك بالسحب والإفلات لمشاريع إنترنت الأشياء وواجهات API وأنظمة الأتمتة المنزلية، مع أكثر من ٤٠٠٠ عقدة من المجتمع. طوّرته IBM وهو مشروع تحت مظلة OpenJS Foundation، ويُعدّ محرك الأتمتة القياسي في إنترنت الأشياء الصناعي.

نظرة سريعة

23.3k

نجوم GitHub

240

مشاهدات الصفحة

294

عمليات التثبيت النشطة

الترخيص Apache-2.0 الإصدار Latest OS Ubuntu Server 24.04 LTS Min RAM 1 GB IP IPV4,IPV6

بيانات التثبيت النشطة تجريبية (معاينة مرحلة التدريج)؛ سيتم توصيل المقياس الحقيقي قبل الإطلاق.

الوصول إلى Node-RED

  • افتح متصفحك وزُر: https://<SERVER_IP>
  • تحذير SSL من المتصفح متوقع (شهادة موقعة ذاتيًا)
  • المصادقة مطلوبة (نافذة Basic Auth المنبثقة)
  • طريقة المصادقة: HTTP Basic Auth
  • بيانات الاعتماد مخزّنة بأمان في: /root/.cloudzy-creds

الملفات والمجلدات المهمة

  • مجلد التثبيت الرئيسي هو /root/node-red.
  • ملف تنسيق Docker موجود في /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.

إدارة الخدمة

التحقق من حالة الحاوية:

docker ps

عرض السجلات:

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

إعادة تشغيل Node-RED:

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

إعادة تشغيل NGINX:

systemctl restart nginx

مستخدم Node-RED المسؤول (بديل عن المصادقة الأساسية)

يمتلك Node-RED نظام مصادقة داخلياً يمكنه استبدال HTTP Basic Auth.

١. تحديد الموقع settings.js

ملف الإعداد الرئيسي موجود داخل وحدة تخزين Node-RED Docker: /var/lib/docker/volumes/node-red_node-red-data/_data/settings.js

٢. التفعيل adminAuth

افتح settings.js وإلغاء التعليق عن (أو إضافة) قسم adminAuth يجب أن يبدو شيئاً كالتالي:

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

٣. توليد تجزئة كلمة المرور

يمكنك توليد التجزئة من داخل حاوية Node-RED:

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

ستُطلب منك إدخال كلمة المرور بصيغتها النصية.

انسخ التجزئة الناتجة والصقها كقيمة password في settings.js.

٤. إعادة تشغيل Node-RED

بعد التعديل على settings.js:

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

٥. تعطيل HTTP Basic Auth في Nginx (اختياري)

تعديل ملف موقع Nginx: /etc/nginx/sites-available/node-red

احذف هذه الأسطر أو أضف تعليقاً عليها:

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

أعد تحميل 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. ثبّت 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

المزيد في أدوات التطوير

تطبيقات ذات صلة.

انشر Node-RED الآن. تبدأ من 2.48 $/شهر.