لماذا Raspberry Pi لتشغيل n8n؟
إذا عندك Raspberry Pi مركون في الدرج — هذا الوقت المناسب لتحويله لخادم أتمتة شخصي. بدلاً من دفع اشتراك شهري للنسخة السحابية من n8n أو حتى استئجار VPS، يمكنك تشغيل n8n مجاناً بالكامل على جهاز بحجم كف اليد.
الفكرة بسيطة: الـ Raspberry Pi يعمل 24/7 باستهلاك كهرباء شبه معدوم، وهذا بالضبط ما تحتاجه لأداة أتمتة تعمل في الخلفية وتنفذ سير العمل بشكل تلقائي. في هذا الشرح سأوريك كيف تفعل ذلك خطوة بخطوة.
ما تحتاجه قبل البداية
تأكد أن عندك التالي:
Raspberry Pi 4 أو 5 بذاكرة 4 GB على الأقل (يفضل 8 GB). النسخ الأقدم أو بذاكرة 2 GB ممكن تشتغل لكن الأداء سيكون محدوداً.
بطاقة MicroSD بسعة 32 GB على الأقل (أو SSD خارجي لأداء أفضل)، كيبل إيثرنت أو اتصال WiFi مستقر، ومزود طاقة مناسب للـ Pi.
Raspberry Pi OS (64-bit) مثبت على البطاقة. إذا لم تثبته بعد، استخدم Raspberry Pi Imager لتثبيت النظام وفعّل SSH من الإعدادات المتقدمة.
الخطوة 1: تحديث النظام وتثبيت Docker
ادخل على الـ Pi عبر SSH (أو افتح التيرمنال مباشرة) ونفّذ التالي:
# الدخول عبر SSH
ssh [email protected]
# تحديث النظام
sudo apt update && sudo apt upgrade -y
# تثبيت Docker
curl -fsSL https://get.docker.com | sh
# إضافة المستخدم لمجموعة Docker
sudo usermod -aG docker pi
# تثبيت Docker Compose plugin
sudo apt install docker-compose-plugin -y
# أعد تسجيل الدخول لتفعيل الصلاحيات
exit
ssh [email protected]
# تحقق من التثبيت
docker --version
docker compose version
الخطوة 2: إعداد ملف Docker Compose
سنستخدم إعداد مخصص للـ Raspberry Pi مع SQLite بدلاً من PostgreSQL لتوفير الموارد. SQLite أكثر من كافي للاستخدام الشخصي والمشاريع الصغيرة.
mkdir -p ~/n8n-pi && cd ~/n8n-pi
أنشئ ملف docker-compose.yml:
version: '3.8'
services:
n8n:
image: n8nio/n8n:latest
container_name: n8n
restart: always
ports:
- '5678:5678'
environment:
# الإعدادات الأساسية
N8N_HOST: 0.0.0.0
N8N_PORT: 5678
N8N_PROTOCOL: http
WEBHOOK_URL: http://YOUR_PI_IP:5678/
# المنطقة الزمنية
GENERIC_TIMEZONE: Asia/Amman
TZ: Asia/Amman
# مفتاح التشفير - احفظه في مكان آمن!
N8N_ENCRYPTION_KEY: your_random_key_here
# تقليل استهلاك الموارد
N8N_DIAGNOSTICS_ENABLED: false
N8N_HIRING_BANNER_ENABLED: false
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
مهم: استبدل YOUR_PI_IP بعنوان IP الـ Pi المحلي (تقدر تعرفه بأمر hostname -I)، وأنشئ مفتاح تشفير عشوائي بأمر openssl rand -hex 32.
الخطوة 3: تشغيل n8n
cd ~/n8n-pi
docker compose up -d
التحميل الأول قد يأخذ بضع دقائق على الـ Pi — هذا طبيعي. بعد اكتماله، افتح المتصفح على أي جهاز متصل بنفس الشبكة واكتب:
http://YOUR_PI_IP:5678
ستظهر شاشة إعداد n8n. أنشئ حسابك وابدأ ببناء سير العمل!
اختياري: إعداد متقدم مع PostgreSQL
إذا كان عندك Pi 5 بذاكرة 8 GB وتريد أداء أقوى لسير عمل كثيرة، يمكنك استخدام PostgreSQL بدلاً من SQLite:
version: '3.8'
services:
n8n-db:
image: postgres:16-alpine
container_name: n8n-db
restart: always
environment:
POSTGRES_USER: n8n
POSTGRES_PASSWORD: your_secure_password
POSTGRES_DB: n8n
volumes:
- n8n_db_data:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U n8n']
interval: 10s
timeout: 5s
retries: 5
n8n:
image: n8nio/n8n:latest
container_name: n8n
restart: always
ports:
- '5678:5678'
environment:
DB_TYPE: postgresdb
DB_POSTGRESDB_HOST: n8n-db
DB_POSTGRESDB_PORT: 5432
DB_POSTGRESDB_DATABASE: n8n
DB_POSTGRESDB_USER: n8n
DB_POSTGRESDB_PASSWORD: your_secure_password
N8N_HOST: 0.0.0.0
N8N_PORT: 5678
N8N_PROTOCOL: http
WEBHOOK_URL: http://YOUR_PI_IP:5678/
GENERIC_TIMEZONE: Asia/Amman
TZ: Asia/Amman
N8N_ENCRYPTION_KEY: your_random_key_here
N8N_DIAGNOSTICS_ENABLED: false
volumes:
- n8n_data:/home/node/.n8n
depends_on:
n8n-db:
condition: service_healthy
volumes:
n8n_db_data:
n8n_data:
اختياري: الوصول من خارج الشبكة باستخدام Cloudflare Tunnel
الإعداد السابق يعمل داخل شبكتك المحلية فقط. إذا أردت الوصول لـ n8n من أي مكان (وهذا ضروري لعمل الـ webhooks)، استخدم Cloudflare Tunnel — مجاني وآمن ولا يحتاج فتح بورتات في الراوتر:
# تثبيت cloudflared
curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm64.deb -o cloudflared.deb
sudo dpkg -i cloudflared.deb
# تسجيل الدخول (سيفتح رابط في المتصفح)
cloudflared tunnel login
# إنشاء التونل
cloudflared tunnel create n8n-pi
# إعداد التونل
mkdir -p ~/.cloudflared
cat > ~/.cloudflared/config.yml << EOF
tunnel: YOUR_TUNNEL_ID
credentials-file: /home/pi/.cloudflared/YOUR_TUNNEL_ID.json
ingress:
- hostname: n8n.yourdomain.com
service: http://localhost:5678
- service: http_status:404
EOF
# ربط الدومين
cloudflared tunnel route dns n8n-pi n8n.yourdomain.com
# تشغيل التونل كخدمة دائمة
sudo cloudflared service install
sudo systemctl enable cloudflared
sudo systemctl start cloudflared
بعد ذلك، حدّث WEBHOOK_URL وN8N_PROTOCOL في docker-compose.yml:
N8N_PROTOCOL: https
WEBHOOK_URL: https://n8n.yourdomain.com/
الآن يمكنك الوصول لـ n8n من أي مكان عبر https://n8n.yourdomain.com والـ webhooks ستعمل بشكل طبيعي.
أوامر صيانة يومية
# عرض حالة الحاويات
docker compose ps
# عرض السجلات
docker compose logs -f n8n
# تحديث n8n
docker compose pull && docker compose up -d
# نسخ احتياطي لبيانات n8n
docker cp n8n:/home/node/.n8n ~/n8n-backup-$(date +%Y%m%d)
# إعادة تشغيل
docker compose restart
نصائح لأداء أفضل على الـ Pi
استخدم SSD خارجي: بطاقات MicroSD بطيئة وعمرها الافتراضي محدود. إذا كنت تنوي تشغيل n8n بشكل دائم، استثمر في SSD خارجي متصل بـ USB 3.0 واجعله قرص الإقلاع الرئيسي.
فعّل swap إضافي: إذا كانت الذاكرة 4 GB، أضف swap لتجنب توقف n8n عند تنفيذ سير عمل ثقيلة:
sudo dphys-swapfile swapoff
sudo sed -i 's/CONF_SWAPSIZE=.*/CONF_SWAPSIZE=2048/' /etc/dphys-swapfile
sudo dphys-swapfile setup
sudo dphys-swapfile swapon
ثبّت عنوان IP: اذهب لإعدادات الراوتر واحجز عنوان IP ثابت للـ Pi (مثلاً 192.168.1.100) حتى لا يتغير بعد إعادة التشغيل.
راقب درجة الحرارة: الـ Pi يعمل 24/7 فتأكد من وجود تهوية جيدة. استخدم vcgencmd measure_temp لمراقبة الحرارة — إذا تجاوزت 70°C بشكل مستمر، أضف مروحة صغيرة أو مبرد معدني.
Raspberry Pi أم VPS؟
الـ Pi ممتاز للتجربة والاستخدام الشخصي والمشاريع الصغيرة. لكن إذا كبر مشروعك واحتجت استقراراً أكثر أو سير عمل كثيرة تعمل بالتوازي، فالانتقال لـ VPS هو الخطوة المنطقية التالية. في هذه الحالة، أنصحك بـ Hostinger VPS — الإعداد مشابه جداً لما فعلناه هنا ويمكنك مراجعة دليلنا الكامل لاستضافة n8n على Hostinger.
Hostinger
✨ استخدم هذا الرابط للحصول على خصم يبلغ 20% عند إتمام عملية الشراء.
رابط إحالة (قد نربح عمولة عند الشراء)
الخلاصة
الآن عندك خادم أتمتة شخصي يعمل 24/7 بتكلفة كهرباء لا تذكر. يمكنك ربط n8n مع ChatGPT، Gmail، Telegram، Google Sheets، وغيرها من الخدمات وبناء سير عمل ذكية توفر عليك ساعات من العمل اليدوي.
هل جربت تشغيل n8n على الـ Pi؟ شاركنا تجربتك في التعليقات!