آموزش نصب n8n + خرید سرور مجازی مناسب برای n8n
n8n یک ابزار اتوماسیون (Workflow Automation) قدرتمند و رایگان برای ساخت فرآیند های خودکار است، با خرید سرور مجازی مناسب و نصب n8n شما یک اتوماسیون برای خودکار کردن فعالیت ها راه اندازی میکنین، این پلتفرم به شما اجازه میده تا فرایندهایی ایجاد کنین و API ها را مدیریت کنید و بدون تنظیمات پیچیده ای، یک پلتفرم برای اتوماتیک کردن فعالیت ها و کسب و کارتون راه اندازی کنید. با راه اندازی این پلتفرم روی سرور مجازی خود، میتونین بدون محدودیت و با کنترل کامل، سرویس های مختلف رو به هم متصل کنید و اطلاعاتی رو از ورودی بگیرید و با n8n پردازش کنید و خروجی دلخواهی که میخواین رو ازش بگیرید.
نمونه هایی از کارهایی که میشه با n8n انجام داد:
- ساخت ربات تلگرام بدون نیاز به کد نویسی
- ارسال خودکار مطالب جدید سایت به کانال تلگرام
- دریافت ایمیل های با موضوع خاص و ذخیره پیوست آن ها در Dropbox یا Google Drive
- ارسال نوتیفیکیشن به Slack یا Discord
- پشتیبان گیری خودکار از فایل ها
- پردازش داده
- ساخت API های سفارشی بدون سرور
- چک کردن تراکنش های بانکی و گزارش گیری
- تولید محتوای خودکار از RSS feeds
- وب اسکرپینگ برای بررسی تغییرات قیمت ها
- ساخت سیستم یادآوری Todoist
خرید سرور مجازی (vps) n8n
اگر قصد راه اندازی سرویس n8n دارید، سرویس های ابری دیتاسنتر هتزنر، به دلیل Cloud بودن، قیمت مناسب، سخت افزار قوی بسیار مناسب اینکار هستن و میتونین اتوماسیون کسب و کارتون رو در سرور مجازی بلوسرور پیاده سازی کنید.
روش 1: نصب n8n روی داکر
برای نصب n8n روی سرور مجازی (VPS) لینوکس اوبونتو توسط تیم n8n توصیه می شود. برای هر کسی که می خواهد یک نسخه پایدار، امن و قابل مدیریت از n8n برای استفاده شخصی یا تجاری داشته باشد، این بهترین گزینه است.
اگر داکر از قبل نصب نیست، با دستور زیر داکر رو نصب می کنیم
sudo apt update && sudo apt install -y docker.io docker-compose
حالا نسخه پایدار n8n دریافت میکنیم (این روش از ساده ترین روشهای نصب هست)
docker pull docker.n8n.io/n8nio/n8n
با دستور زیر n8n اجرا میکنیم
docker run -d --name n8n -p 5678:5678 -v ~/.n8n:/home/node/.n8n docker.n8n.io/n8nio/n8n
برای اینکه به n8n وارد بشید، باید در مرورگر، آدرس آی پی و پورت n8n وارد کنین.
IP-Server-Shoma:5678
برای انجام تنظیمات پیشرفته، میتونین یک دامنه یا ساب دامنه به آی پی سرور متصل کنین و براش SSL فعال کنید. روشی که در بالا توضیح دادیم یک روش ساده و آسان برای نصب بود، ولی اگر از Docker Compose استفاده کنید می توانید فایل docker-compose.yml بسازید و با docker-compose up -d اجرا کنید. این روش برای مدیریت بلندمدت و تنظیمات پیشرفته تر بهتر است.
چرا نصب n8n روی داکر بهترین انتخاب است
- ایزوله سازی: n8n و پایگاه داده اش (مثلا PostgreSQL) در محیط های مجازی مجزایی به نام “کانتینر” اجرا می شوند، یعنی با سایر نرم افزارهای روی سرور شما تداخلی نخواهند داشت.
- قابلیت انتقال و ارتقا : پیکربندی تنظیمات در فایل docker-compose.yml ذخیره می شود و به سرور خاصی وابسته نیست. می توانید به راحتی کل برنامه را از یک سرور به سرور دیگر منتقل کنید. همچنین در آینده می توانید به سادگی منابع را افزایش داده یا سرویسذهای جدیدی به مجموعه خود اضافه کنید.
- پایداری و امنیت: این روش به طور گسترده تست شده و برای محیط های عملیاتی (Production) بهینه است. استفاده از پایگاه داده مجزا و قدرتمند (که در فایل docker-compose.yml تعریف میشود) پایداری و امنیت داده ها را تضمین می کند.
- مدیریت آسان: با استفاده از یک فایل تنظیمات ساده به نام docker-compose.yml، می توانید تمام سرویس های مورد نیاز (خود n8n، پایگاه داده، و تنظیمات شبکه بین آن ها) را به صورت یکجا تعریف کنید. راهاندازی، توقف، و بروزرسانی کل مجموعه تنها با چند دستور کوتاه مثل docker-compose up -d انجام می شود و نیازی به پیکربندی دستی و جداگانه هر سرویس نیست.
روش 2: نصب n8n با npm
قبل از شروع، باید ابزارهای Node.js (نسخه ۱۶ یا بالاتر) و npm روی سیستم شما نصب باشد، با دستورات node -v و npm -v از نصب بودن و نسخه آن ها مطمئن بشید.
نصب n8n با دستور npm
ترمینال (یا Command Prompt / PowerShell در ویندوز) را باز کرده و دستور زیر را اجرا کنید. این دستور پکیج n8n را به صورت سراسری روی سیستم شما نصب می کند تا از هر مسیری در ترمینال قابل اجرا باشد.
npm install -g n8n
پس از اتمام نصب، اجرای n8n بسیار ساده است. کافیست دستور زیر را در ترمینال خود وارد کنید.
n8n
پس از اجرای این دستور، n8n شروع به کار کرده و خروجی مشابه زیر به شما نشان داده می شود:
n8n is listening on 0.0.0.0, port 5678 Editor is now available on: http://localhost:5678
برای اینکه به n8n وارد بشید، باید در مرورگر، آدرس آی پی و پورت n8n وارد کنین.
IP-Server-Shoma:5678
جدول مقایسه VPS های بلوسرور برای n8n
ویژگی ها | VPS آلمان (Hetzner) | VPS آمریکا (Hetzner) | VPS فنلاند (Hetzner) |
نوع سرور مجازی | Cloud | Cloud | Cloud |
پینگ به ایران | (90ms) | (200ms) | (100ms) |
قیمت | اقتصادی و ارزان | کمی بالاتر | اقتصادی و ارزان |
امنیت و پایداری | بسیار بالا (دیتاسنتر هتزنر) | بسیار بالا (دیتاسنتر هتزنر) | بسیار بالا (دیتاسنتر هتزنر) |
پشتیبانی IPv6 | دارد | دارد | دارد |
امکان نصب سریع n8n | دارد | دارد | دارد |
قابلیت ارتقا منابع | بله | بله | بله |
n8n Integrations
صفحه n8n Integrations شامل هزاران لیست از سرویس های قابل ادغام (integration) است که n8n با سرویس های مختلف مانند Gmail، Slack، Notion، Telegram، Discord، PostgreSQL و بسیاری دیگر امکان ادغام و هماهنگ میشود. هر ادغام برای خواندن، نوشتن یا پردازش داده از آن سرویس است. این ادغام ها باعث می شوند بدون کدنویسی، اتصال بین ابزارهای مختلف به راحتی انجام شود.
n8n Workflows
بخش n8n Workflows شامل مجموعه ای از نمونه فرآیند های آماده است که کاربران می توانند برای شروع سریع یا الهام گرفتن از آن ها استفاده کنند. هر workflow یک فرآیند اتوماسیون است مثل: ذخیره ایمیل ها در Google Sheets، ارسال پیام در تلگرام
مفاهیم مرتبط برای استفاده در n8n
- Webhooks: به جای اینکه n8n مدام از سرویس های دیگر بپرسد «آیا الان چیزی تغییر کرد؟». شما یک لینک از n8n میگیرید و به آن سرویس ها میدهید. هر وقت اتفاق مهمی در آن سرویس ها افتاد، آنها خودشان فورا به آن لینک خبر می دهند تا n8n هم آگاه شود.
- Code Node: گره Code یک محیط کوچک برنامه نویسی (جاوا اسکریپت) داخل n8n است. هر زمان که گره های استاندارد n8n برای انجام یک کار خاص کافی نباشند، این گره به شما قدرت و انعطاف پذیری نامحدود میدهد.
- Error Workflows: یک فرآیند کار جداگانه است که فقط زمانی اجرا میشود که یکی از فرآینده های کاری اصلی شما با خطا مواجه شود. این یک راه اطلاع رسانی برای اتوماسیون های شماست، یعنی به جای اینکه یک فرآیند مهم (مثل ثبت سفارش) به صورت پنهانی شکست بخوره و کار نکنه، شما بلافاصله از وقوع چنین خطایی آگاه میشید و مشکل برطرف میکنید.
- Sub-Workflows: یک فرآیند است که توسط یک فرآیند دیگر فراخوانی و اجرا میشود. این مفهوم دقیقا مانند توابع (Functions) در برنامه نویسی است. شما یک کار تکراری را یکبار می سازید و سپس بارها از آن استفاده میکنید.