آموزش نصب n8n روی سرور و سیستم شخصی
اگر به دنبال ساخت اتوماسیونهای حرفهای، اتصال سرویسهای مختلف به یکدیگر و اجرای خودکار کارهای تکراری هستید، احتمالاً نام n8n را شنیدهاید. n8n یکی از محبوبترین ابزارهای اتوماسیون Workflow است که به شما اجازه میدهد سرویسها، APIها، دیتابیسها و نرمافزارهای مختلف را بدون نیاز به نوشتن حجم زیادی کد به یکدیگر متصل کنید.
یکی از مزیتهای مهم n8n این است که میتوانید آن را هم روی سیستم شخصی و هم روی سرور اختصاصی یا VPS نصب و اجرا کنید.
در این مقاله بهصورت کامل بررسی میکنیم که n8n چیست، چه روشهایی برای نصب آن وجود دارد و چگونه n8n را روی ویندوز، لینوکس و سرور با استفاده از Docker نصب کنیم.
n8n چیست؟
n8n یک پلتفرم Workflow Automation یا اتوماسیون فرایندهاست. با استفاده از n8n میتوانید چند سرویس مختلف را به یکدیگر متصل کرده و فرایندهایی را طراحی کنید که بهصورت خودکار اجرا شوند.
برای مثال میتوانید Workflowای بسازید که:
- یک فرم را دریافت کند.
- اطلاعات را در دیتابیس ذخیره کند.
- یک پیام به تلگرام ارسال کند.
- اطلاعات مشتری را در CRM ثبت کند.
- یک ایمیل ارسال کند.
- نتیجه را در Google Sheets ذخیره کند.
همه این مراحل میتوانند بدون دخالت دستی کاربر و بر اساس یک Trigger اجرا شوند.
n8n از تعداد زیادی Integration و Node پشتیبانی میکند و در صورت نیاز میتوان از API و Webhook نیز برای اتصال سرویسهای مختلف استفاده کرد.
چرا n8n را روی سرور نصب کنیم؟
اجرای n8n روی سیستم شخصی برای یادگیری و تست بسیار مناسب است، اما اگر قرار است Workflowهای شما بهصورت 24 ساعته اجرا شوند، استفاده از سرور یا VPS انتخاب بهتری است.
برخی از مزایای نصب n8n روی سرور عبارتاند از:
اجرای 24 ساعته
سرور معمولاً دائماً روشن است و Workflowهای شما میتوانند بدون نیاز به روشن بودن کامپیوتر شخصی اجرا شوند.
دسترسی از هر مکان
پس از تنظیم دامنه و SSL میتوانید از هر دستگاهی به پنل n8n دسترسی داشته باشید.
اجرای Webhook
اگر قرار است سرویسهای دیگر به n8n درخواست Webhook ارسال کنند، سرور عمومی گزینه بسیار مناسبتری نسبت به کامپیوتر شخصی است.
مناسب برای اتوماسیونهای واقعی
برای استفاده در کسبوکار، CRM، فروش، بازاریابی، پردازش اطلاعات، APIها و سرویسهای آنلاین، نصب n8n روی VPS یا سرور معمولاً انتخاب حرفهایتری است.
روشهای نصب n8n
روشهای مختلفی برای نصب n8n وجود دارد، اما چند روش از بقیه کاربردیتر هستند:
- نصب n8n با Docker
- نصب n8n با npm
- استفاده از Docker Compose
- نصب n8n روی سرور لینوکس
- اجرای n8n روی سیستم شخصی
در این آموزش تمرکز اصلی ما روی Docker است؛ زیرا مدیریت، انتقال، بهروزرسانی و نگهداری n8n با Docker بسیار سادهتر میشود.
پیشنیازهای نصب n8n روی سرور
برای نصب n8n روی یک VPS یا سرور لینوکسی بهتر است حداقل منابع مناسبی برای Workflowهای موردنظر خود در نظر بگیرید.
برای شروع میتوانید از یک سرور با مشخصات متوسط استفاده کنید.
موارد موردنیاز:
- سرور VPS یا اختصاصی
- سیستمعامل Linux مانند Ubuntu
- دسترسی SSH
- Docker
- Docker Compose
- دامنه، در صورت نیاز به دسترسی عمومی
- گواهی SSL برای استفاده امن از پنل
اگر Workflowهای سنگین، پردازش فایل، اجرای تعداد زیادی درخواست یا دیتای حجیم دارید، باید منابع CPU، RAM و فضای ذخیرهسازی بیشتری در نظر بگیرید.
نصب n8n روی Ubuntu با Docker
در این بخش یک روش استاندارد برای اجرای n8n روی سرور Ubuntu را بررسی میکنیم.
مرحله اول؛ اتصال به سرور
ابتدا با SSH به سرور متصل شوید.
در ویندوز میتوانید از PowerShell یا Windows Terminal استفاده کنید.
نمونه:
ssh root@SERVER-IP
بهجای SERVER-IP باید IP سرور خودتان را وارد کنید.
مرحله دوم؛ بهروزرسانی Ubuntu
پس از ورود به سرور، بهتر است سیستم را بهروزرسانی کنید:
apt update && apt upgrade -y
بعد از اجرای این دستور، بستههای سیستمعامل بهروزرسانی میشوند.
مرحله سوم؛ نصب Docker
در مرحله بعد باید Docker را روی سرور نصب کنید.
یکی از روشهای متداول استفاده از اسکریپت نصب رسمی Docker است:
curl -fsSL https://get.docker.com | sh
پس از نصب، وضعیت Docker را بررسی کنید:
docker --version
اگر نسخه Docker نمایش داده شد، نصب با موفقیت انجام شده است.
مرحله چهارم؛ ساخت پوشه n8n
برای نگهداری فایلهای مربوط به n8n یک پوشه ایجاد کنید:
mkdir -p /opt/n8n
cd /opt/n8n
در این پوشه میتوان فایلهای Docker Compose و اطلاعات موردنیاز n8n را مدیریت کرد.
مرحله پنجم؛ ساخت فایل Docker Compose
یک فایل به نام زیر ایجاد کنید:
nano docker-compose.yml
سپس پیکربندی مناسب n8n را داخل آن قرار دهید.
یک ساختار ساده میتواند به شکل زیر باشد:
services:
n8n:
image: docker.n8n.io/n8nio/n8n
restart: unless-stopped
ports:
- "5678:5678"
environment:
- N8N_HOST=n8n.example.com
- N8N_PORT=5678
- N8N_PROTOCOL=https
- WEBHOOK_URL=https://n8n.example.com/
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
در این فایل باید دامنه نمونه را با دامنه واقعی خودتان جایگزین کنید.
نکته مهم: تنظیمات مربوط به دامنه، HTTPS، احراز هویت، Reverse Proxy و سایر پارامترهای امنیتی باید متناسب با محیط واقعی شما تنظیم شوند.
مرحله ششم؛ اجرای n8n
پس از ذخیره فایل، دستور زیر را اجرا کنید:
docker compose up -d
Docker ایمیج n8n را دریافت کرده و Container مربوط به n8n را اجرا میکند.
برای بررسی وضعیت Containerها:
docker compose ps
همچنین میتوانید لاگ n8n را مشاهده کنید:
docker compose logs -f n8n
اگر Container بدون خطا اجرا شده باشد، n8n آماده استفاده است.
ورود به n8n
در حالت ساده، n8n از پورت زیر استفاده میکند:
5678
بنابراین در صورت دسترسی مستقیم میتوانید آدرس زیر را بررسی کنید:
http://SERVER-IP:5678
البته برای استفاده واقعی و عمومی بهتر است n8n را مستقیماً روی IP و پورت خام در اینترنت قرار ندهید و از Domain + HTTPS + Reverse Proxy استفاده کنید.
نصب n8n با Docker Compose و Volume
یکی از نکات مهم هنگام نصب n8n، حفظ اطلاعات Workflowهاست.
اگر Container حذف شود ولی اطلاعات n8n داخل Volume ذخیره نشده باشد، ممکن است اطلاعات موردنیاز خود را از دست بدهید.
به همین دلیل در Docker Compose از Volume استفاده میکنیم:
volumes:
- n8n_data:/home/node/.n8n
این Volume باعث میشود دادههای n8n خارج از لایه موقت Container نگهداری شوند.
اتصال دامنه به n8n
اگر میخواهید به جای IP از آدرسی مانند زیر استفاده کنید:
n8n.example.com
باید یک رکورد DNS برای دامنه ایجاد کنید.
معمولاً یک رکورد A ایجاد میشود:
Type: A
Name: n8n
Value: SERVER-IP
پس از انتشار DNS میتوانید دامنه را به سرور متصل کنید.
استفاده از SSL برای n8n
برای محیط واقعی استفاده از HTTPS بسیار مهم است.
دسترسی امن باید چیزی شبیه این باشد:
https://n8n.example.com
برای پیادهسازی HTTPS میتوان از Reverse Proxyهایی مانند Nginx یا Caddy و گواهیهای SSL معتبر استفاده کرد.
HTTPS برای Webhookها، احراز هویت و ارتباط امن با سرویسهای خارجی اهمیت زیادی دارد.
نصب n8n روی سیستم شخصی
اگر هدف شما یادگیری، تست Workflow و توسعه اتوماسیون است، لازم نیست از همان ابتدا سرور تهیه کنید.
میتوانید n8n را روی سیستم شخصی خود اجرا کنید.
یکی از روشهای مناسب برای این کار نیز Docker است.
نصب n8n روی ویندوز با Docker Desktop
ابتدا Docker Desktop را روی ویندوز نصب کنید.
پس از نصب و اجرای Docker Desktop، در PowerShell میتوانید یک Container برای n8n اجرا کنید.
نمونه دستور:
docker volume create n8n_data
سپس:
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-v n8n_data:/home/node/.n8n \
docker.n8n.io/n8nio/n8n
در ویندوز ممکن است شکل دستور بسته به محیط Command Line متفاوت باشد؛ در صورت استفاده از PowerShell میتوانید ساختار دستور را متناسب با PowerShell تنظیم کنید.
پس از اجرای Container، معمولاً n8n از طریق این آدرس قابل دسترسی خواهد بود:
http://localhost:5678
نصب n8n با npm
روش دیگر نصب n8n استفاده از Node.js و npm است.
ابتدا باید Node.js را روی سیستم نصب داشته باشید.
سپس میتوانید n8n را نصب کنید:
npm install n8n -g
بعد از نصب، اجرای n8n با دستور زیر انجام میشود:
n8n
سپس مرورگر را باز کرده و آدرس زیر را وارد کنید:
http://localhost:5678
این روش برای توسعه و تست میتواند مناسب باشد، اما برای محیطهای Production معمولاً Docker یا روشهای مدیریتشده انتخاب بهتری هستند.
نصب n8n روی Linux با npm
روی سیستمهای Linux نیز میتوان n8n را با npm نصب کرد.
ابتدا Node.js و npm را نصب کنید و سپس:
npm install n8n -g
اجرای n8n:
n8n
با این حال در سرور Production بهتر است موضوعاتی مانند سرویس دائمی، مدیریت Process، Backup، امنیت، Reverse Proxy و بهروزرسانی را نیز در نظر بگیرید.
به همین دلیل Docker برای بسیاری از سناریوها گزینه سادهتر و قابل مدیریتتری است.
تفاوت نصب n8n روی سیستم شخصی و سرور
| ویژگی | سیستم شخصی | سرور / VPS |
|---|---|---|
| مناسب یادگیری | بسیار مناسب | مناسب |
| اجرای 24 ساعته | معمولاً خیر | بله |
| دسترسی از اینترنت | نیازمند تنظیمات بیشتر | سادهتر |
| Webhook عمومی | محدودتر | مناسب |
| استفاده Production | معمولاً پیشنهاد نمیشود | مناسب |
| هزینه | کم | نیازمند هزینه سرور |
| مدیریت | ساده | نیازمند مدیریت سرور |
| امنیت | نسبتاً ساده | نیازمند تنظیمات امنیتی |
اگر تازه با n8n شروع کردهاید، پیشنهاد میشود ابتدا آن را روی سیستم شخصی نصب کنید و Workflowهای خود را آزمایش کنید.
بعد از آماده شدن پروژه، میتوانید آن را به VPS منتقل کنید.
ساخت اولین Workflow در n8n
بعد از ورود به پنل n8n، محیطی مبتنی بر Node مشاهده میکنید.
هر Workflow معمولاً از چند بخش تشکیل میشود:
Trigger
شروعکننده Workflow است.
برای مثال:
- Schedule
- Webhook
- دریافت اطلاعات از یک سرویس
- اجرای دستی
Action
بعد از Trigger عملیات موردنظر انجام میشود.
برای مثال:
- ارسال ایمیل
- ثبت اطلاعات در دیتابیس
- ارسال پیام
- اجرای API
- پردازش داده
Logic
میتوانید با شرطها و عملیات منطقی تعیین کنید که Workflow در چه شرایطی چه کاری انجام دهد.
مثال ساده برای اتوماسیون
فرض کنید میخواهید هر روز ساعت 9 صبح یک عملیات خودکار اجرا شود.
ساختار Workflow میتواند به این شکل باشد:
Schedule Trigger
↓
دریافت اطلاعات
↓
پردازش اطلاعات
↓
ثبت در Database
↓
ارسال Notification
در این حالت n8n تمام مراحل را بدون دخالت کاربر انجام میدهد.
Webhook در n8n چیست؟
Webhook یکی از قابلیتهای بسیار مهم n8n است.
با Webhook میتوانید یک URL ایجاد کنید که سرویسهای دیگر به آن درخواست ارسال کنند.
برای مثال:
Customer
↓
Website Form
↓
Webhook
↓
n8n
↓
CRM + Database + Telegram
این قابلیت n8n را برای اتوماسیون سیستمهای فروش، سایت، CRM و سرویسهای مختلف بسیار کاربردی میکند.
نکات امنیتی مهم در نصب n8n
اگر n8n را روی سرور عمومی نصب میکنید، امنیت را جدی بگیرید.
1. استفاده از HTTPS
پنل n8n را با HTTPS در دسترس قرار دهید.
2. استفاده از رمز عبور قوی
از رمزهای ساده برای حسابهای مدیریتی استفاده نکنید.
3. بهروزرسانی منظم
Docker Image و خود n8n را بهصورت کنترلشده بهروزرسانی کنید.
4. محدود کردن دسترسی سرور
پورتهای غیرضروری را روی Firewall باز نگذارید.
5. تهیه Backup
از اطلاعات مهم n8n و دیتابیس مربوط به آن نسخه پشتیبان داشته باشید.
6. محافظت از Credentialها
اطلاعات ورود به APIها، دیتابیسها و سرویسهای خارجی را مانند رمز عبور مدیریت کنید.
Backup از n8n
Backup یکی از مهمترین بخشهای نگهداری n8n است.
اگر Workflowهای زیادی ساختهاید یا n8n به سرویسهای مهم کسبوکار شما متصل است، از اطلاعات آن نسخه پشتیبان تهیه کنید.
همچنین بهتر است Backupها را فقط روی همان سرور نگه ندارید.
یک استراتژی مناسب میتواند شامل موارد زیر باشد:
n8n Server
↓
Backup
↓
Storage جداگانه
در پروژههای مهم حتی میتوان چند نسخه Backup با دورههای نگهداری مختلف ایجاد کرد.
بهروزرسانی n8n در Docker
یکی از مزایای Docker، سادهتر شدن فرایند Update است.
قبل از بهروزرسانی، حتماً Backup مناسب داشته باشید.
سپس میتوانید Image جدید را دریافت و Container را با نسخه جدید اجرا کنید.
بهصورت کلی:
docker compose pull
docker compose up -d
البته قبل از Update نسخه جدید باید تغییرات و سازگاری آن با Workflowهای خود را بررسی کنید.
خطاهای رایج هنگام نصب n8n
خطای باز نشدن پورت 5678
ممکن است پورت در Firewall سرور مسدود باشد یا Container بهدرستی اجرا نشده باشد.
ابتدا وضعیت Container را بررسی کنید:
docker compose ps
سپس لاگها را ببینید:
docker compose logs -f n8n
خطای دامنه
اگر دامنه باز نمیشود، موارد زیر را بررسی کنید:
- DNS
- IP سرور
- Reverse Proxy
- تنظیمات HTTPS
- Firewall
- پورتهای موردنیاز
حذف شدن اطلاعات Workflow
این مشکل معمولاً زمانی رخ میدهد که اطلاعات n8n داخل Volume دائمی ذخیره نشده باشد.
بنابراین استفاده صحیح از Volume و Backup بسیار مهم است.
n8n برای چه کسانی مناسب است؟
n8n فقط برای برنامهنویسان نیست.
این ابزار برای گروههای مختلف کاربرد دارد:
- برنامهنویسان
- مدیران شبکه و IT
- متخصصان DevOps
- مدیران کسبوکار
- تیمهای فروش
- تیمهای بازاریابی
- مدیران سایت
- متخصصان هوش مصنوعی
- شرکتهایی که نیاز به اتوماسیون دارند
اگر با APIها و Webhookها آشنا باشید، امکانات n8n بسیار گستردهتر میشود.
n8n و هوش مصنوعی
یکی از دلایل محبوبیت n8n، امکان ساخت Workflowهای مبتنی بر AI است.
برای مثال میتوان Workflowای طراحی کرد که:
دریافت پیام مشتری
↓
تحلیل توسط AI
↓
تشخیص موضوع
↓
جستجوی اطلاعات
↓
تولید پاسخ
↓
ارسال پاسخ
به این ترتیب n8n میتواند بهعنوان لایه اتصال بین مدلهای هوش مصنوعی و سایر سرویسهای کسبوکار عمل کند.
سرور مناسب برای n8n چه مشخصاتی دارد؟
انتخاب منابع سرور کاملاً به نوع Workflowها بستگی دارد.
برای Workflowهای سبک، منابع متوسط میتواند کافی باشد؛ اما اگر تعداد اجرای همزمان زیاد باشد یا عملیات سنگین انجام دهید، به منابع بیشتری نیاز خواهید داشت.
موارد مهم عبارتاند از:
- RAM
- CPU
- فضای ذخیرهسازی
- سرعت دیسک
- پهنای باند
- تعداد Workflowها
- تعداد Executionهای همزمان
- نوع Database
بنابراین نمیتوان یک مشخصات ثابت را برای تمام پروژههای n8n مناسب دانست.
جمعبندی آموزش نصب n8n روی سرور و سیستم شخصی
n8n یکی از ابزارهای قدرتمند برای ساخت اتوماسیون Workflow است و میتوان آن را هم روی سیستم شخصی و هم روی سرور اجرا کرد.
اگر هدف شما یادگیری و تست است، نصب n8n روی سیستم شخصی گزینه بسیار خوبی است. اما برای پروژههای واقعی، Webhookهای عمومی و اجرای 24 ساعته، استفاده از VPS یا سرور به همراه Docker، دامنه، HTTPS، Backup و تنظیمات امنیتی مناسب انتخاب حرفهایتری خواهد بود.
در میان روشهای نصب، Docker و Docker Compose به دلیل مدیریت سادهتر Container، نگهداری اطلاعات و امکان بهروزرسانی راحت، گزینهای بسیار کاربردی برای اجرای n8n محسوب میشوند.
اگر قصد دارید n8n را برای کسبوکار، اتوماسیون فروش، مدیریت مشتری، اتصال APIها یا پروژههای هوش مصنوعی استفاده کنید، بهتر است از همان ابتدا معماری، امنیت، Backup و منابع سرور را متناسب با حجم کار طراحی کنید.
سوالات متداول
آیا n8n رایگان است؟
n8n را میتوان بهصورت Self-hosted اجرا کرد و در این حالت خودتان زیرساخت اجرای آن را مدیریت میکنید. شرایط استفاده و لایسنس نسخههای مختلف را باید بر اساس نسخه و کاربرد موردنظر بررسی کنید.
آیا میتوان n8n را روی ویندوز نصب کرد؟
بله. میتوانید n8n را روی سیستم ویندوزی خود با روشهایی مانند Docker یا npm اجرا کنید.
آیا برای n8n حتماً VPS لازم است؟
خیر. برای یادگیری و تست میتوانید n8n را روی کامپیوتر شخصی اجرا کنید؛ برای اجرای دائمی و عمومی، سرور انتخاب مناسبتری است.
آیا n8n به Docker نیاز دارد؟
خیر، n8n تنها با Docker اجرا نمیشود و روشهای دیگری مانند npm نیز وجود دارد؛ اما Docker برای بسیاری از نصبهای سروری مدیریت سادهتری ارائه میکند.
پورت پیشفرض n8n چیست؟
در اجرای معمول، n8n روی پورت 5678 در دسترس قرار میگیرد.
آیا میتوان n8n را به دامنه متصل کرد؟
بله. میتوانید با استفاده از DNS و Reverse Proxy، n8n را روی یک زیردامنه اجرا کرده و HTTPS را برای آن فعال کنید.
آیا اطلاعات Workflowها بعد از حذف Container از بین میرود؟
اگر اطلاعات را بهدرستی در Volume یا Storage پایدار نگهداری نکرده باشید، احتمال از دست رفتن اطلاعات وجود دارد. استفاده از Volume و Backup منظم بسیار مهم است.![]()
![]()
![]()