راهنمای کامل نصب n8n
معرفی n8n و مزایای راهاندازی خود میزبانی
n8n یک پلتفرم متن باز است که با نگاه ساده به کاربر اجازه می دهد سینک و خودکارسازی وظایف را بدون نیاز به کدنویسی عمیق انجام دهد. از طریق یک رابط کاربری گرافیکی قابل استفاده است و مدل کار با رویدادها و اتصالات سرویس های مختلف را تسهیل می کند. مزایای اصلی شامل قابلیت اجرای روی زیرساخت شخصی، کنترل کامل بر داده ها، دسترسی به اکوسیستم اتصالات گسترده و امکان گسترش با استفاده از افزونه ها و ماژول ها است.
ویژگی های کلیدی
- اتوماتیک سازی بدون کدنویسی یا با کدنویسی حداقلی
- اتصالات گسترده به سرویس های وب و پایگاه داده ها
- اجرای محلی یا در محیط های ابری یا سرور خصوصی
- پشتیبانی از اجرای مداوم با مدیریت رویدادها
- مقیاس پذیری با استفاده از راه حل های پلتفرمی مانند Docker
بررسی مزیت ها و کاربری ها
- ایجاد اتوماسیون برای فرایندهای فروش و پشتیبانی
- یکپارچه سازی با ابزارهای گزارش گیری و تحلیلی
- اتوماسیون وظایف پشتیبان گیری، نظارت و ارزیابی سلامت سیستم
- سادگی مدیریت و توسعه بدون وابستگی به تیم های توسعه سنگین
پیش نیازها و الزامات فنی
سخت افزار و سیستم عامل
برای اجرای n8n در محیط توسعه یا آزمایش، منابع متوسطی کافی است. حداقل مقدار منابع به کارگیری همزمان کاربر و وظایف اجرایی بستگی دارد. به طور کلی، یک سرور یا ماشین مجازی با رومینگ مناسب، حداقل 2 گیگابایت RAM و فضای دیسک لازم است. در محیط تولید با کاربری بالا، منابع بیشتری پیشنهاد می شود. استفاده از Linux یا macOS برای سرورهای تولیدی معمول تر است و Windows نیز با استفاده از WSL یا Docker قابل استفاده می باشد.
نسخه های Node.js و پایگاه داده
قبل از نصب مطمئن شوید که نسخه پشتیبانی شده از Node.js روی سیستم شما نصب است. در اغلب موارد نسخه های LTS مانند Node.js 16 یا 18 قابل استفاده هستند. برای اطمینان همواره به مستندات رسمی ن8ن مراجعه کنید. از نظر پایگاه داده، n8n از گزینه های مختلفی پشتیبانی می کند از جمله SQLite برای استفاده ساده در محیط توسعه و PostgreSQL یا MySQL برای محیط تولید. با وجود این که SQLite به صورت فایل مستقل کار می کند، برای کارهای سنگین و چند کاربره پایدارتر PostgreSQL یا MySQL توصیه می شود.
روش های نصب n8n
نصب محلی با npm یا Yarn
برای شروع سریع در محیط توسعه می توانید از نصب محلی استفاده کنید. پس از نصب Node.js، دستورات پایه به شکل زیر هستند. ابتدا n8n را به صورت جهانی نصب کنید، سپس اجرا را آغاز کنید. در صورت استفاده از پایگاه داده خارجی، باید مقادیر مربوط به دیتابیس را در متغیرهای محیطی مشخص کنید.
- نصب با npm: نصب ن8ن به صورت جهانی
- اجرای اولیه: راهاندازی سریع n8n
- اتصال به دیتابیس: پیکربندی متغیرهای محیطی برای دیتابیس
نمونه کلی برای اجرای محلی بدون پیکربندی پیچیده: پس از نصب می توانید با دستور n8n استارت کنید و به UI دسترسی پیدا کنید. برای استفاده از دیتابیس خارجی، مقادیر مهم مانند نوع دیتابیس، میزبانی دیتابیس و کاربر و رمز عبور لازم است که به صورت متغیرهای محیطی یا فایل پیکربندی اعمال شود.
نصب با Docker
استفاده از Docker یک روش محبوب برای اجرای سریع و مقیاس پذیر است. با استفاده از تصاویر رسمی ن8ن، می توانید به سرعت یک محیط قابل حمل و امن راه اندازی کنید. در این حالت معمولاً از docker-compose برای مدیریت سرویس ها استفاده می شود. مزیت اصلی Docker امکان اجرای همزمان چند پروژه بدون تداخل در وابستگی ها است.
- ایجاد فایل تنظیمات ساده Docker Compose برای ن8ن
- اجرای خدمات با یک فرمان ساده و مرکزیت لاگ ها
- پیکربندی دیتابیس با استفاده از متغیرهای محیطی در فایل compose
نصب به عنوان سرویس با systemd یا PM2
برای اجرای دائمی و مدیریت آسان، می توانید ن8ن را به عنوان سرویس سیستم با systemd یا ابزارهای مدیریت فرایند مانند PM2 اضافه کنید. این روش به شما امکان می دهد که ن8ن در بوت سیستم آغاز شود و لاگ ها به درستی ذخیره شوند. برای این کار ابتدا ن8ن را در مسیر مناسب نصب کنید و سپس واحدهای سرویس یا اسکریپت های راه اندازی را ایجاد کنید.
اجرای n8n روی ویندوز
اگر از ویندوز استفاده می کنید، گزینه های متعددی وجود دارد. ساده ترین مسیر استفاده از Docker برای ویندوز است تا از پیکربندی بومی جلوگیری شود. همچنین امکان استفاده از WSL جهت اجرای ن8ن به صورت محلی وجود دارد که کارایی مناسبی را فراهم می کند.
پیکربندی اولیه و اتصال به دیتابیس
تنظیم متغیرهای محیطی اصلی
برای پیکربندی n8n در هر دو حالت محلی و تولید، برخی متغیرهای محیطی نقش کلیدی دارند. این پارامترها شامل میزبان و پورت n8n پروتکل امن و احراز هویت است. همچنین کلید رمزگذاری برای داده های حساس و گزینه های امنیتی مانند فعال کردن احراز هویت پایه یا SSO با استفاده از پروکسی قابل استفاده هستند. به طور معمول موارد زیر مورد استفاده قرار می گیرد
- N8N_HOST میزبانی سرویس
- N8N_PORT پورت پیش فرض یا اختصاصی
- N8N_PROTOCOL پروتکل ارتباطی از جمله http یا https
- N8N_BASIC_AUTH_ACTIVE فعال یا غیر فعال بودن احراز هویت پایه
- N8N_BASIC_AUTH_USER و N8N_BASIC_AUTH_PASSWORD برای کاربر احراز هویت پایه
- N8N_ENCRYPTION_KEY کلید رمزگذاری برای داده های امن
تنظیمات دیتابیس
ن8ن از چند دیتابیس پشتیبانی می کند. اگر از SQLite استفاده می کنید، به سادگی یک فایل دیتابیس در مسیر مشخص می شود. برای تولید و مقیاس پذیری بهتر PostgreSQL یا MySQL توصیه می شود. نکته مهم این است که هنگام کار با دیتابیس خارجی، آدرس دیتابیس، کاربر و پسورد را به درستی پیکربندی کنید و اجازه دسترسی از سرور ن8ن به دیتابیس را بدهید.
مدیریت دیتابیس و پشتیبانگیری
پشتیبانگیری از دیتابیس
برای حفظ داده ها و جلوگیری از از دست رفتن اطلاعات، تهیه پشتیبان منظم از دیتابیس ضروری است. در حالت PostgreSQL می توانید از ابزارهای استاندارد مانند pg_dump استفاده کنید و در حالت SQLite فایل دیتابییس را به صورت دوره ای کپی کنید. در هر دو حالت بهتر است ترتیبی برای بازیابی سریع در صورت بروز مشکل وجود داشته باشد.
به روز رسانی و نگهداری
برای حفظ امنیت و کارایی، به روز رسانی منظم ن8ن و پایگاه داده اهمیت دارد. پیش از به روز رسانی در محیط تولید، یک نسخه پشتیبان و زمان مناسب برای انجام عملیات انتخاب کنید. همچنین لاگ ها را بررسی کنید تا از صحت کارکرد و بدون خطا بودن فرآیندها مطمئن شوید.
امنیت و دسترسی
احراز هویت و دسترسی کاربری
فعال کردن احراز هویت پایه یا استفاده از پروکسی امن مانند TLS از نکات مهم است. همچنین می توانید با استفاده از احراز هویت دو مرحله ای یا SSO از طریق خدمات معتبر امنیتی، امنیت دسترسی به UI را افزایش دهید. تنظیم مجاز دسترسی برای پروژه ها و کاربرها نیز از اهمیت بالایی برخوردار است.
سرویس دهی با پروکسی و TLS
برای عرضه به کاربران نهایی، استفاده از یک پروکسی معتمد برای مدیریت TLS پیشنهاد می شود. این کار علاوه بر ایمنی، امکان استفاده از نام دامنه اختصاصی را نیز فراهم می کند و به SEO و دسترسی بهتر کمک می کند.
مقایسه روش ها و بهترین گزینه برای شما
مقایسه سریع بین نصب محلی و Docker و سرویس دهی
- نصب محلی با npm یا Yarn سریع است و مناسب برای توسعه است اما ممکن است برای تولید کافی نباشد
- Docker گزینه اصلی برای تولید، با امکان مدیریت نسخه ها و پیکربندی دیتابیس به صورت مستقل است
- راه اندازی به عنوان سرویس با systemd یا PM2 به پایدارتر بودن اجرای ن8ن کمک می کند و مدیریت restart را ساده تر می کند
انتخاب نهایی بسته به نیازهای پروژه شما دارد. برای توسعه معمولا نصب محلی یا Docker مناسب است و برای تولید توصیه می شود از Docker یا راه اندازی سرویس مطمئن استفاده کنید تا پایدار بودن سرویس حفظ شود.
سوالات متداول
- آیا ن8ن رایگان است و نسخه اوپن سورس دارد؟
- آیا می توان n8n را به عنوان سرویس دائم اجرا کرد؟
- برای محیط تولید چه دیتابیس را پیشنهاد می کنید؟
- آیا نصب با Docker امن تر است یا نصب محلی؟
- چطور می توان دسترسی به UI را امن کرد؟
خلاصه و نکات کلیدی
- n8n یک پلتفرم متن باز برای اتوماسیون فرایندها است که به راحتی می تواند در محیط محلی یا تولید اجرا شود
- برای تولید، استفاده از Docker و یک دیتابیس پایدار مانند PostgreSQL توصیه می شود
- پیکربندی صحیح متغیرهای محیطی امنیتی و دیتابیس نقش مهمی در عملکرد و امنیت دارد
- راه اندازی به عنوان سرویس با systemd یا PM2 به اجرای پایدار و مدیریت بهتر کمک می کند
- قبل از هر به روز رسانی، از دیتابیس پشتیبان تهیه کنید و در محیط آزمایش گاید انجام دهید
خلاصه نهایی
راه اندازی ن8ن می تواند با چند گزینه مختلف انجام شود که هر کدام مزایا و محدودیت های خاص خود را دارند. با در نظر گرفتن نیاز به تولید، امنیت و سهولت نگهداری، انتخاب مناسب ترین روش می تواند به بهبود کارایی و صرفه جویی در زمان کمک کند. همواره مستندات رسمی ن8ن را مرور کنید تا از آخرین تغییرات و بهترین شیوه ها مطلع باشید.



دیدگاهتان را بنویسید