بازگشت به بینش‌ها
اتوماسیون و ایجنت5 آبان 1405۱۳ دقیقه مطالعه

نصب n8n با Docker Compose روی ویندوز؛ راهنمای فارسی گام‌به‌گام

آموزش نصب n8n روی داکر ویندوز با WSL2 و Docker Compose؛ فایل compose آماده، ذخیره دائمی داده، بررسی اجرا و رفع خطاهای رایج.

معماری اجرای محلی n8n در Docker Desktop و WSL2 با پورت و حجم داده پایدار

اگر عبارت‌های «نصب n8n با داکر» یا «n8n docker compose فارسی» را جست‌وجو کرده‌اید، این راهنما یک مسیر محدود و قابل تکرار برای اجرای محلی n8n روی ویندوز نشان می‌دهد. برای استفاده عمومی روی اینترنت، همین فایل کافی نیست: دامنه، HTTPS، پشتیبان‌گیری، مدیریت دسترسی و تنظیم وب‌هوک جداگانه لازم‌اند. این راهنما برای یادگیری و ساخت نخستین گردش کار مناسب است.

مرورگر روی localhost به کانتینر n8n و حجم داده دائمی متصل است
شکل ۱ — معماری همین راهنما: مرورگر محلی، کانتینر n8n و volume برای حفظ گردش‌کارها. شکل، نمودار پیکربندی است.

قبل از شروع: WSL2 و Docker Compose

  1. Docker Desktop را از منبع رسمی نصب و با WSL2 backend اجرا کنید. مجازی‌سازی باید فعال باشد.
  2. در تنظیمات Docker Desktop مطمئن شوید موتور در حال اجراست. در PowerShell یا ترمینال WSL، docker --version و docker compose version را اجرا کنید؛ هر دو باید نسخه نشان دهند.
  3. اگر از WSL استفاده می‌کنید، پوشه پروژه را داخل فایل‌سیستم لینوکس، مانند ~/n8n-local، بسازید. راهنمای رسمی n8n درباره کندی و مشکل مجوز در bind mountهای /mnt/c/... هشدار می‌دهد.

برای استفاده دائمی سازمانی، مستندات رسمی نصب n8n با Docker Compose را مبنای پیکربندی قرار دهید. نمونه زیر عمداً فقط خود n8n را به صورت محلی اجرا می‌کند؛ سرویس اختیاری n8n Assistant را نصب نمی‌کند.

فایل Compose آماده برای اجرای محلی

در یک پوشه خالی، فایلی به نام compose.yaml بسازید و متن زیر را قرار دهید:

services:
  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: unless-stopped
    ports:
      - "127.0.0.1:5678:5678"
    environment:
      TZ: Asia/Tehran
      GENERIC_TIMEZONE: Asia/Tehran
      N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS: "true"
    volumes:
      - n8n_data:/home/node/.n8n

volumes:
  n8n_data:

اتصال پورت به 127.0.0.1 یعنی این نمونه فقط از همان رایانه در دسترس است. n8n_data یک volume نام‌دار است و داده‌های برنامه را هنگام ساخت دوباره کانتینر نگه می‌دارد. دو متغیر زمانی برای ساعت سیستم و اجرای درست گره‌های زمان‌بندی استفاده می‌شوند. مطابق راهنمای نصب n8n، مسیر /home/node/.n8n برای حفظ داده مهم است.

اجرا و اولین بررسی

در همان پوشه، این دستورها را به‌ترتیب اجرا کنید:

docker compose up -d
docker compose ps
docker compose logs --tail=50 n8n

پس از بالا آمدن سرویس، http://localhost:5678 را در مرورگر باز کنید. اگر صفحه راه‌اندازی اولیه دیده شد، نصب موفق بوده است. اطلاعات حساب مالک را در مدیر رمزعبور نگه دارید. برای توقف بدون حذف داده، docker compose down را اجرا کنید. دستور down -v volume را نیز حذف می‌کند؛ برای توقف عادی از آن استفاده نکنید.

آزمون عملی: یک گردش کار ساده با Manual Trigger و یک گره Set/Edit Fields بسازید که متنی مانند «سلام n8n» را تولید کند. آن را اجرا کنید، سپس docker compose down و docker compose up -d را انجام دهید. اگر گردش کار هنوز در فهرست است، ماندگاری داده را در محیط خودتان تأیید کرده‌اید.

خطاهای رایج و روش تشخیص

نشانهبررسی بعدی
docker compose شناخته نمی‌شودDocker Desktop یا افزونه Compose v2 نصب و اجرا نشده؛ نسخه‌ها را بررسی کنید.
صفحه localhost:5678 باز نمی‌شودdocker compose ps و docker compose logs --tail=50 n8n را بررسی کنید؛ شاید کانتینر بالا نیامده یا پورت اشغال است.
خطای WSL یا virtualizationوضعیت WSL2 و مجازی‌سازی را طبق راهنمای Docker Desktop بررسی کنید.
داده پس از ساخت دوباره کانتینر نیستنام پروژه Compose، volume و مسیر mount را بررسی کنید؛ حذف volume داده را پاک می‌کند.
زمان اجرای Schedule اشتباه استمقدار GENERIC_TIMEZONE و تنظیم زمان‌بندی گره را بررسی کنید.

متن کامل خطا را بخوانید؛ صرفاً تغییر تصادفی تنظیمات معمولاً علت را پنهان می‌کند. اگر docker compose ps سرویس را Exited نشان می‌دهد، گزارش همان سرویس نقطه شروع است.

به‌روزرسانی و پشتیبان‌گیری

پیش از به‌روزرسانی، از volume و گردش‌کارها پشتیبان بگیرید و تغییرات ناسازگار نسخه را بخوانید. سپس تصویر جدید را دریافت و سرویس را بازسازی کنید:

docker compose pull
docker compose up -d
docker compose ps

به‌روزرسانی را روی یک گردش کار آزمایشی بررسی کنید. برای محیط عملیاتی، نسخه تصویر را مشخص و تغییر آن را برنامه‌ریزی کنید؛ استفاده از برچسب پیش‌فرض در نمونه آموزشی برای شروع ساده‌تر است. کپی فایل compose.yaml به‌تنهایی پشتیبان داده و کلید رمزگذاری n8n نیست.

بعد از نصب: از اتوماسیون تا ایجنت

n8n یک ابزار اتصال و خودکارسازی گردش کار است. لازم نیست برای هر کار از مدل زبانی استفاده کنید. ابتدا یک ورودی مشخص و یک خروجی قابل بررسی بسازید؛ سپس اگر انتخاب ابزار بر اساس نتیجه لازم بود، راهنمای ساخت ایجنت هوش مصنوعی را بخوانید. اگر قرار است ایجنت از اسناد فارسی پاسخ مستند بدهد، راهنمای RAG روش آماده‌سازی و ارزیابی سند را توضیح می‌دهد.

مرز این راهنما: نصب محلی به معنی آماده‌بودن برای انتشار عمومی نیست. پیش از اتصال ایمیل، داده مشتری یا ابزارهای نوشتنی، سطح دسترسی، سیاست داده و تأیید انسانی را مشخص کنید.

پرسش‌های متداول

برای نصب n8n روی ویندوز به Node.js نیاز دارم؟

در روش این راهنما خیر؛ n8n داخل کانتینر Docker اجرا می‌شود. Docker Desktop با پشتیبانی WSL2 و Docker Compose لازم است.

آیا با خاموش کردن کانتینر، گردش‌کارهای n8n پاک می‌شوند؟

اگر volume پایدار را مطابق نمونه به مسیر /home/node/.n8n متصل کنید، داده با توقف یا ساخت دوباره کانتینر باقی می‌ماند. حذف volume یا خرابی دیسک همچنان خطر از دست رفتن داده دارد؛ نسخه پشتیبان تهیه کنید.

چرا localhost:5678 باز نمی‌شود؟

ابتدا اجرای Docker Desktop، وضعیت کانتینر با docker compose ps، گزارش خطا با docker compose logs و آزاد بودن پورت 5678 را بررسی کنید.

مطالعه‌های بیشترهمهٔ مقاله‌های یوتا