سی ام اس نویسسی ام اس نویسیاد بگیر، سیستم خودتو بنویس
مجلهتماس با ما
سی ام اس نویسسی ام اس نویس

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

پیوندهای سریع
محصولات فیزیکیمحصولات دیجیتالدوره‌های آموزشی
سی ام اس نویس
مجله سی ام اس نویستماس با ماپنل کاربری
سی ام اس نویس — تمامی حقوق برای سی ام اس نویس محفوظ است. © 1406 تماس با ما09307711941
آموزش Docker Compose برای n8n؛ مدیریت سرویس‌ها، متغیرهای محیطی و Volumeها

آموزش Docker Compose برای n8n؛ مدیریت سرویس‌ها، متغیرهای محیطی و Volumeها

ممدیر کل سیستم ۲۷ مهر ۱۴۰۵ ۱۵ دقیقه مطالعه ۱ بازدید
آموزش Docker Compose برای n8n؛ مدیریت سرویس‌ها، متغیرهای محیطی و Volumeها

وقتی n8n را با Docker روی سرور نصب می‌کنید، اجرای اولیه برنامه تنها قدم اول است. پس از راه‌اندازی، ممکن است بخواهید منطقه زمانی را تغییر دهید، یک متغیر محیطی جدید اضافه کنید، تنظیمات اتصال را اصلاح کنید، وضعیت کانتینر را بررسی کنید یا سرویس را بدون از دست دادن اطلاعات به‌روزرسانی کنید.

برای انجام این کارها، آشنایی با Docker Compose اهمیت زیادی دارد.

Docker Compose ابزاری برای تعریف و مدیریت سرویس‌های کانتینری است. به‌جای اجرای چندین دستور طولانی Docker، می‌توانید تنظیمات سرویس‌ها را در یک فایل نگهداری کنید و با چند دستور، آن‌ها را اجرا، متوقف یا بازآفرینی کنید.

در این مقاله یاد می‌گیریم Docker Compose چگونه کار می‌کند، فایل compose.yaml چه کاربردی دارد، متغیرهای محیطی چگونه تنظیم می‌شوند و چگونه از حذف ناخواسته اطلاعات n8n جلوگیری کنیم.

۱. Docker Compose چیست و چه کاربردی دارد؟

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

اگر همه این تنظیمات را در دستورهای طولانی Docker وارد کنید، مدیریت و تغییر آن‌ها دشوار می‌شود.

Docker Compose این تنظیمات را در قالب یک فایل YAML نگهداری می‌کند.

برای مثال، یک سرویس ساده n8n می‌تواند به این شکل تعریف شود:


services:

  n8n:

    image: docker.n8n.io/n8nio/n8n

    restart: unless-stopped

    ports:

      - "127.0.0.1:5678:5678"

    volumes:

      - n8n_data:/home/node/.n8n



volumes:

  n8n_data:

این فایل به Docker Compose می‌گوید:

  • از تصویر n8n استفاده کند.
  • سرویس را در شرایط مناسب پس از توقف دوباره اجرا کند.
  • پورت داخلی n8n را فقط روی Loopback سرور منتشر کند.
  • اطلاعات برنامه را در یک Volume پایدار نگهداری کند.

نکته مهم این است که Docker Compose خودش جایگزین Docker Engine نیست؛ بلکه از Docker برای مدیریت سرویس‌های تعریف‌شده استفاده می‌کند.

مستندات رسمی: https://docs.docker.com/compose/

۲. فایل compose.yaml از چه بخش‌هایی تشکیل شده است؟

در فایل Compose، هر بخش مسئولیت مشخصی دارد. مهم‌ترین بخش‌هایی که در مدیریت n8n با آن‌ها سروکار خواهید داشت عبارت‌اند از:

بخشکاربرد
servicesتعریف سرویس‌هایی مانند n8n و PostgreSQL
imageتعیین تصویر کانتینر
portsانتشار پورت‌های سرویس
environmentتعریف متغیرهای محیطی
env_fileخواندن متغیرها از فایل جداگانه
volumesنگهداری داده‌ها یا اتصال مسیرهای فایل‌سیستم
restartتعیین سیاست راه‌اندازی مجدد
networksتعریف ارتباط شبکه‌ای میان سرویس‌ها
depends_onمشخص کردن وابستگی ترتیب راه‌اندازی سرویس‌ها

همه این گزینه‌ها برای هر نصب ضروری نیستند. برای مثال، اگر n8n به پایگاه داده خارجی متصل باشد، لزوماً نیازی به تعریف سرویس PostgreSQL در همان فایل ندارید.

۳. چگونه فایل Compose را ایجاد یا ویرایش کنیم؟

فرض می‌کنیم n8n در مسیر /opt/n8n نصب شده است.

ابتدا وارد پوشه شوید:


cd /opt/n8n

فایل‌های موجود را ببینید:


ls -la

اگر فایل compose.yaml وجود دارد، آن را باز کنید:


nano compose.yaml

اگر فایل با نام docker-compose.yml ذخیره شده باشد، می‌توانید همان فایل را ویرایش کنید. Docker Compose از هر دو نام متداول پشتیبانی می‌کند، اما بهتر است در هر پروژه یک فایل اصلی مشخص داشته باشید.

پس از ویرایش، پیش از اعمال تغییرات، پیکربندی را بررسی کنید:


docker compose config

این دستور تنظیمات Compose را پردازش می‌کند و به شناسایی برخی خطاهای ساختاری یا متغیرهای تعریف‌نشده کمک می‌کند.

اگر فایل در مسیر دیگری قرار دارد، ابتدا وارد همان پوشه شوید یا مسیر فایل را با گزینه -f مشخص کنید.

۴. متغیرهای محیطی در n8n چه هستند؟

متغیرهای محیطی یا Environment Variables به شما اجازه می‌دهند تنظیمات برنامه را بدون تغییر کد اصلی آن تعیین کنید.

برای مثال، n8n از متغیرهایی برای تنظیم منطقه زمانی، آدرس عمومی، نوع پایگاه داده و برخی قابلیت‌های اجرایی استفاده می‌کند.

نمونه:


services:

  n8n:

    image: docker.n8n.io/n8nio/n8n

    environment:

      - TZ=Asia/Tehran

      - GENERIC_TIMEZONE=Asia/Tehran

در این مثال، منطقه زمانی محیط اجرا و منطقه زمانی عمومی مورد استفاده n8n تنظیم شده است.

بااین‌حال، همه متغیرهای محیطی کاربرد یکسانی ندارند. پیش از اضافه کردن هر متغیر، باید مستندات همان گزینه را بررسی کنید؛ زیرا ممکن است یک متغیر به نسخه مشخصی وابسته باشد یا فقط در شرایط خاص کاربرد داشته باشد.

مستندات رسمی متغیرهای محیطی n8n:

https://docs.n8n.io/hosting/configuration/environment-variables/

۵. چگونه متغیرهای محیطی را در فایل .env نگهداری کنیم؟

وقتی تعداد متغیرها زیاد می‌شود، قرار دادن همه آن‌ها در فایل Compose خوانایی فایل را کاهش می‌دهد.

در چنین شرایطی می‌توانید از فایل .env استفاده کنید.

برای ایجاد فایل:


cd /opt/n8n

nano .env

برای مثال، محتوای زیر را وارد کنید:


TZ=Asia/Tehran

GENERIC_TIMEZONE=Asia/Tehran

N8N_HOST=n8n.example.com

N8N_PROTOCOL=https

WEBHOOK_URL=https://n8n.example.com/

مقادیر دامنه در این مثال فرضی هستند و باید با دامنه واقعی شما جایگزین شوند.

سپس فایل Compose را به این شکل تنظیم کنید:


services:

  n8n:

    image: docker.n8n.io/n8nio/n8n

    restart: unless-stopped

    ports:

      - "127.0.0.1:5678:5678"

    environment:

      TZ: ${TZ}

      GENERIC_TIMEZONE: ${GENERIC_TIMEZONE}

      N8N_HOST: ${N8N_HOST}

      N8N_PROTOCOL: ${N8N_PROTOCOL}

      WEBHOOK_URL: ${WEBHOOK_URL}

    volumes:

      - n8n_data:/home/node/.n8n



volumes:

  n8n_data:

در این ساختار، Docker Compose مقادیر تعریف‌شده در فایل .env را در تنظیمات Compose جای‌گذاری می‌کند.

تفاوت .env و env_file چیست؟

این دو مفهوم شبیه یکدیگرند، اما دقیقاً یک کار انجام نمی‌دهند.

فایل .env کنار فایل Compose معمولاً برای جای‌گذاری متغیرها در خود فایل Compose استفاده می‌شود؛ مانند ${TZ}.

در مقابل، گزینه env_file در تعریف سرویس برای انتقال متغیرهای یک فایل به محیط اجرای کانتینر استفاده می‌شود.

برای مثال:


services:

  n8n:

    image: docker.n8n.io/n8nio/n8n

    env_file:

      - n8n-runtime.env

در این مثال، مقادیر فایل n8n-runtime.env به محیط اجرای کانتینر منتقل می‌شوند.

اگر از ${VARIABLE} در فایل Compose استفاده می‌کنید، باید مطمئن شوید Compose می‌تواند مقدار متغیر را از منبع مناسب پیدا کند.

مستندات رسمی Docker درباره متغیرها:

https://docs.docker.com/compose/how-tos/environment-variables/

نکته امنیتی درباره فایل .env

فایل .env ممکن است حاوی رمز عبور، توکن یا اطلاعات حساس باشد. بنابراین:

  • دسترسی فایل را محدود کنید.
  • آن را در مخزن عمومی Git قرار ندهید.
  • نسخه پشتیبان آن را در محل امن نگهداری کنید.
  • از قرار دادن رمزهای واقعی در نمونه کدهای آموزشی خودداری کنید.

برای محیط‌های حساس، استفاده از روش‌های مدیریت Secret متناسب با زیرساخت می‌تواند از نگهداری ساده رمزها در فایل‌های متنی مناسب‌تر باشد.

۶. Volume چیست و چرا برای n8n مهم است؟

کانتینرها را می‌توان حذف و دوباره ایجاد کرد. بنابراین، نباید اطلاعات مهم را صرفاً به لایه موقت کانتینر وابسته کنید.

Volume در Docker امکان نگهداری داده‌ها خارج از چرخه عمر کانتینر را فراهم می‌کند.

برای n8n معمولاً باید مسیر ذخیره اطلاعات برنامه به‌صورت پایدار نگهداری شود.

نمونه:


services:

  n8n:

    image: docker.n8n.io/n8nio/n8n

    volumes:

      - n8n_data:/home/node/.n8n



volumes:

  n8n_data:

در این تنظیم، n8n_data نام Volume است و /home/node/.n8n مسیر داخل کانتینر محسوب می‌شود.

با اجرای Compose، اگر Volume وجود نداشته باشد، Docker آن را ایجاد می‌کند. اگر Volume موجود باشد و همان Volume به سرویس متصل شود، اطلاعات آن قابل استفاده مجدد خواهد بود.

چگونه Volumeهای موجود را بررسی کنیم؟

برای مشاهده Volumeها:


docker volume ls

برای مشاهده جزئیات یک Volume:


docker volume inspect N8N_VOLUME_NAME

به‌جای N8N_VOLUME_NAME باید نام واقعی Volume را قرار دهید.

نام نهایی Volume ممکن است با نام پروژه Compose ترکیب شده باشد؛ بنابراین آن را از خروجی دستور قبلی پیدا کنید.

آیا Volume همان نسخه پشتیبان است؟

خیر. Volume برای نگهداری پایدار داده‌ها است، اما به‌تنهایی از اطلاعات در برابر خرابی دیسک، حذف ناخواسته یا از دست رفتن سرور محافظت نمی‌کند.

برای سرویس عملیاتی باید برنامه پشتیبان‌گیری جداگانه داشته باشید و بازیابی اطلاعات را نیز آزمایش کنید.

۷. تفاوت Named Volume و Bind Mount چیست؟

در Docker Compose دو روش رایج برای اتصال داده‌ها به کانتینر وجود دارد.

روش اول: Named Volume


volumes:

  - n8n_data:/home/node/.n8n

در این روش، Docker محل ذخیره‌سازی Volume را مدیریت می‌کند. این روش برای نگهداری داده‌های برنامه گزینه‌ای ساده و متداول است.

روش دوم: Bind Mount


volumes:

  - /opt/n8n/data:/home/node/.n8n

در این روش، یک مسیر مشخص از سیستم‌عامل میزبان به مسیر داخل کانتینر متصل می‌شود.

Bind Mount زمانی مفید است که بخواهید مسیر فایل‌ها روی سرور را خودتان تعیین کنید یا به فایل‌ها از بیرون کانتینر دسترسی داشته باشید.

بااین‌حال، باید مجوزهای فایل و مالکیت مسیر را با کاربر اجراکننده n8n سازگار کنید. تنظیم نادرست مجوزها ممکن است باعث شود برنامه نتواند اطلاعات را بخواند یا بنویسد.

توصیه: اگر هدف شما فقط نگهداری پایدار داده‌های n8n است و نیاز خاصی به تعیین مسیر میزبان ندارید، Named Volume معمولاً انتخاب ساده‌تری است.

۸. چگونه سرویس n8n را با Docker Compose مدیریت کنیم؟

پس از نصب، نیازی نیست برای هر عملیات دوباره دستور طولانی اجرای کانتینر را بنویسید.

در پوشه‌ای که فایل Compose قرار دارد، می‌توانید از دستورهای زیر استفاده کنید.

مشاهده وضعیت سرویس


docker compose ps

این دستور وضعیت سرویس‌های تعریف‌شده در پروژه را نمایش می‌دهد.

مشاهده لاگ‌ها


docker compose logs --tail=100 n8n

برای مشاهده زنده لاگ‌ها:


docker compose logs -f n8n

این دستورات هنگام بررسی خطاهای راه‌اندازی، اتصال پایگاه داده یا مشکلات پیکربندی مفید هستند.

راه‌اندازی سرویس


docker compose up -d

گزینه -d باعث می‌شود سرویس در پس‌زمینه اجرا شود.

متوقف کردن سرویس


docker compose stop n8n

این دستور سرویس را متوقف می‌کند، اما کانتینر و Volumeهای آن را برای استفاده مجدد نگه می‌دارد.

شروع دوباره سرویس متوقف‌شده


docker compose start n8n

راه‌اندازی مجدد سرویس


docker compose restart n8n

توجه داشته باشید که restart برای اعمال هر نوع تغییر پیکربندی کافی نیست. اگر متغیر محیطی یا تنظیمات تعریف‌شده در Compose را تغییر داده‌اید، معمولاً باید سرویس را با پیکربندی جدید بازآفرینی کنید.

۹. چگونه تغییرات Compose را اعمال کنیم؟

فرض کنید مقدار منطقه زمانی را تغییر داده‌اید یا متغیر جدیدی به فایل اضافه کرده‌اید.

ابتدا فایل‌ها را ذخیره کنید و تنظیمات نهایی را بررسی کنید:


docker compose config

سپس سرویس را با تنظیمات جدید بازآفرینی کنید:


docker compose up -d

Docker Compose تغییرات پیکربندی را تشخیص می‌دهد و در صورت نیاز کانتینر را بازسازی می‌کند. اگر داده‌ها در Volume مناسب نگهداری شوند، بازآفرینی کانتینر به‌خودی‌خود به معنی حذف آن داده‌ها نیست.

برای مشاهده وضعیت بعد از تغییر:


docker compose ps

docker compose logs --tail=100 n8n

اگر سرویس به‌درستی اجرا نشد، تنظیمات جدید و پیام خطا را بررسی کنید.

هشدار: قبل از تغییرات مهم روی محیط عملیاتی، نسخه پشتیبان تهیه کنید. همچنین از دستورهای پاک‌سازی گسترده یا حذف Volumeها بدون شناخت اثر آن‌ها استفاده نکنید.

۱۰. چگونه n8n و PostgreSQL را در یک Compose مدیریت کنیم؟

در پروژه‌های بزرگ‌تر ممکن است بخواهید n8n و PostgreSQL را در یک پروژه Compose اجرا کنید.

در این حالت، دو سرویس در یک فایل تعریف می‌شوند و می‌توانند از طریق شبکه داخلی Compose با یکدیگر ارتباط برقرار کنند.

نمونه ساده ساختار:


services:

  n8n:

    image: docker.n8n.io/n8nio/n8n

    restart: unless-stopped

    environment:

      DB_TYPE: postgresdb

      DB_POSTGRESDB_HOST: postgres

      DB_POSTGRESDB_PORT: 5432

      DB_POSTGRESDB_DATABASE: n8n

      DB_POSTGRESDB_USER: n8n

      DB_POSTGRESDB_PASSWORD: ${POSTGRES_PASSWORD}

    volumes:

      - n8n_data:/home/node/.n8n

    depends_on:

      - postgres



  postgres:

    image: postgres:16

    restart: unless-stopped

    environment:

      POSTGRES_DB: n8n

      POSTGRES_USER: n8n

      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}

    volumes:

      - postgres_data:/var/lib/postgresql/data



volumes:

  n8n_data:

  postgres_data:

این نمونه برای توضیح ساختار است و پیش از استفاده واقعی باید با نسخه‌های پشتیبانی‌شده، متغیرهای مستندشده n8n، سیاست سلامت سرویس و نیازهای امنیتی شما تطبیق داده شود.

چند نکته مهم:

  • فایل .env باید مقدار مناسب POSTGRES_PASSWORD را داشته باشد.
  • رمز واقعی نباید در مخزن عمومی ذخیره شود.
  • در این نمونه، پورت PostgreSQL به میزبان منتشر نشده است؛ سرویس n8n از نام سرویس postgres برای اتصال داخلی استفاده می‌کند.
  • depends_on به‌تنهایی تضمین نمی‌کند PostgreSQL کاملاً آماده پذیرش اتصال باشد.
  • برای محیط عملیاتی، Healthcheck و سیاست مدیریت خطا را در نظر بگیرید.
  • پیش از انتقال نصب موجود از SQLite به PostgreSQL، باید برای مهاجرت داده‌ها برنامه‌ریزی کنید؛ تغییر متغیرهای اتصال به‌تنهایی داده‌های قبلی را منتقل نمی‌کند.

مستندات تنظیمات پایگاه داده n8n:

https://docs.n8n.io/hosting/configuration/environment-variables/database/

۱۱. چگونه خطاهای رایج Docker Compose را برطرف کنیم؟

خطای YAML یا پیکربندی نامعتبر

اگر تورفتگی‌ها یا ساختار فایل YAML اشتباه باشند، ممکن است Compose نتواند فایل را پردازش کند.

دستور زیر را اجرا کنید:


docker compose config

ساختار بخش‌ها، تورفتگی‌ها، نام متغیرها و علامت‌های نقل‌قول را بررسی کنید.

متغیر محیطی خالی است

اگر مقدار یک متغیر در فایل Compose تعریف نشده باشد، ممکن است مقدار نهایی آن خالی شود یا هشدار دریافت کنید.

برای مثال، اگر نوشته باشید:


environment:

  WEBHOOK_URL: ${WEBHOOK_URL}

اما متغیر WEBHOOK_URL در محیط یا فایل .env موجود نباشد، پیکربندی نهایی مطابق انتظار شما نخواهد بود.

وجود متغیر را بررسی کنید و سپس خروجی docker compose config را ببینید. هنگام بررسی خروجی، مراقب باشید مقادیر محرمانه در ترمینال یا لاگ‌های اشتراکی افشا نشوند.

کانتینر در وضعیت Restarting است

ابتدا لاگ‌های سرویس را ببینید:


docker compose logs --tail=200 n8n

دلایل احتمالی می‌تواند شامل تنظیمات نامعتبر، خطای اتصال به پایگاه داده، مشکل مجوزهای فایل یا ناسازگاری پیکربندی باشد.

اطلاعات پس از بازآفرینی کانتینر ناپدید شده‌اند

Volume متصل به سرویس را بررسی کنید. ممکن است کانتینر جدید از Volume دیگری استفاده کند یا تنظیمات ذخیره‌سازی تغییر کرده باشند.

از حذف و ساخت مجدد Volume برای رفع سریع مشکل خودداری کنید؛ این کار می‌تواند بازیابی اطلاعات را دشوارتر کند.

پورت در دسترس نیست

اگر پورت موردنظر قبلاً توسط سرویس دیگری استفاده شده باشد، Compose ممکن است نتواند آن را منتشر کند.

برای بررسی پورت 5678 روی سرور:


sudo ss -ltnp | grep 5678

اگر n8n را پشت Reverse Proxy قرار داده‌اید، بررسی کنید پورت داخلی و آدرس انتشار آن با معماری شبکه هماهنگ باشد.

۱۲. نکات مهم برای مدیریت امن n8n

مدیریت صحیح Compose فقط به اجرای دستورها محدود نمی‌شود. برای استفاده عملیاتی، این نکات را رعایت کنید:

  • پورت‌ها: پنل مدیریتی را بدون نیاز واقعی روی اینترنت منتشر نکنید.
  • رمزها: اطلاعات حساس را در مخزن عمومی یا فایل‌های قابل‌دسترسی همگانی قرار ندهید.
  • Volumeها: پیش از حذف یا تغییر مسیر آن‌ها، اثر کار را بررسی کنید.
  • به‌روزرسانی: نسخه مورد استفاده را آگاهانه انتخاب کنید و پیش از ارتقا پشتیبان بگیرید.
  • لاگ‌ها: هنگام ارسال لاگ برای عیب‌یابی، توکن‌ها و اطلاعات محرمانه را حذف کنید.
  • پشتیبان‌گیری: فقط به نگهداری داده‌ها در Volume اکتفا نکنید؛ بازیابی نسخه پشتیبان را نیز آزمایش کنید.
  • دسترسی‌ها: دسترسی مدیریتی به سرور و پنل n8n را محدود کنید.

اگر چندین سرویس روی یک سرور دارید، بهتر است برای هر پروژه ساختار پوشه، نام‌گذاری، شبکه و سیاست پشتیبان‌گیری مشخصی تعریف کنید تا مدیریت و عیب‌یابی آسان‌تر شود.

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

آیا برای مدیریت n8n باید هر بار کانتینر را حذف کنم؟

خیر. برای عملیات معمول مانند مشاهده لاگ‌ها، توقف و شروع سرویس، دستورهای Docker Compose کافی هستند. برای اعمال تغییرات پیکربندی نیز معمولاً می‌توانید از docker compose up -d استفاده کنید.

آیا تغییر فایل Compose اطلاعات n8n را پاک می‌کند؟

ویرایش فایل به‌تنهایی اطلاعات را پاک نمی‌کند. بااین‌حال، اگر Volume حذف شود، مسیر ذخیره‌سازی تغییر کند یا سرویس به محل داده دیگری متصل شود، ممکن است اطلاعات قبلی در دسترس نباشند.

آیا فایل .env برای نگهداری رمزها کاملاً امن است؟

خیر. فایل .env ابزار ساده‌ای برای مدیریت تنظیمات است، اما اگر حاوی رمز باشد باید دسترسی آن محدود شود و نباید در مخزن عمومی قرار بگیرد. برای محیط‌های حساس، روش مدیریت Secret مناسب زیرساخت را بررسی کنید.

تفاوت stop و down چیست؟

docker compose stop سرویس‌ها را متوقف می‌کند و کانتینرها را برای شروع مجدد نگه می‌دارد.

docker compose down کانتینرها و شبکه‌های ایجادشده توسط Compose را حذف می‌کند؛ اما Named Volumeها به‌طور معمول با این دستور حذف نمی‌شوند، مگر اینکه گزینه حذف Volume نیز استفاده شود. بنابراین قبل از اجرای دستورهای حذف، اثر آن‌ها را بررسی کنید.

آیا می‌توان چند سرویس را با یک فایل Compose مدیریت کرد؟

بله. می‌توانید سرویس‌هایی مانند n8n، PostgreSQL و ابزارهای جانبی را در یک فایل تعریف کنید. بااین‌حال، نحوه اتصال شبکه‌ای، ذخیره‌سازی و وابستگی‌ها باید مطابق معماری پروژه طراحی شود.

جمع‌بندی

Docker Compose ابزار مهمی برای مدیریت نصب n8n است. با استفاده از فایل compose.yaml می‌توانید سرویس‌ها، متغیرهای محیطی، شبکه‌ها و Volumeها را به‌شکل منظم تعریف کنید.

برای مدیریت روزمره، دستورهایی مانند docker compose ps، docker compose logs، docker compose stop و docker compose up -d بسیار کاربردی هستند. مهم‌تر از همه، باید میان تنظیمات سرویس و داده‌های پایدار تفاوت قائل شوید و پیش از تغییرات مهم، از اطلاعات خود پشتیبان بگیرید.

پس از تسلط بر این مفاهیم، می‌توانید سراغ تنظیمات پیشرفته‌تر n8n، پایگاه داده PostgreSQL، Reverse Proxy و مدیریت سرویس‌های متعدد بروید.

نظرات (0)

نظرات پس از تأیید مدیر نمایش داده می‌شوند

هنوز نظری ثبت نشده است؛ اولین نفر باشید!

مقالات مرتبط

نصب n8n؛ آموزش کامل راه‌اندازی n8n از صفر تا اجرا

نصب n8n؛ آموزش کامل راه‌اندازی n8n از صفر تا اجرا

۱۲ دقیقه
معایب n8n چیست؟ بررسی ۱۰ محدودیت و مشکل مهم قبل از استفاده

معایب n8n چیست؟ بررسی ۱۰ محدودیت و مشکل مهم قبل از استفاده

۲۱ دقیقه
مزایای n8n چیست؟ ۱۲ دلیل برای استفاده از n8n در اتوماسیون کسب‌وکار

مزایای n8n چیست؟ ۱۲ دلیل برای استفاده از n8n در اتوماسیون کسب‌وکار

۲۲ دقیقه
n8n یا Power Automate؛ کدام ابزار اتوماسیون برای کسب‌وکار شما بهتر است؟

n8n یا Power Automate؛ کدام ابزار اتوماسیون برای کسب‌وکار شما بهتر است؟

۲۲ دقیقه