کد تخفیف افتتاحیه: TH20

به مناسبت افتتاحیه، با کد تخفیف TH20 از ۲۰٪ تخفیف روی همه سرویس‌ها بهره‌مند شوید. کد را در مرحله پرداخت وارد کنید.

آموزش نصب n۸n روی VPS با Docker

آموزش نصب n8n روی VPS لینوکس با داکر

جدول محتوا 👇

پلتفرم n8n یکی از قدرتمندترین ابزارهای خودکارسازی وظایف و گردش‌کارها (Workflows) است. در این آموزش جامع، نحوه نصب n8n روی VPS را با داکر کامپوز (Docker Compose)، پایگاه داده مستقل PostgreSQL و وب‌سرور معکوس Nginx به همراه گواهی SSL معتبر Let’s Encrypt بررسی می‌کنیم.

چرا نصب n8n با Docker Compose برترین روش است؟

اجرای n8n به صورت مستقیم با npm ممکن است با وابستگی‌های نسخه Node.js دچار تداخل شود. استقرار با Docker تضمین می‌کند که داده‌ها، متغیرها و دیتابیس در محیطی کاملاً مستقل و قابل انتقال نگهداری شوند. برای آشنایی با زیرساخت میزبانی، مقاله سرور مجازی چیست را مطالعه کنید.

فایل پیکربندی docker-compose.yml و دیتابیس PostgreSQL

یک دایرکتوری ایجاد کرده و فایل docker-compose.yml زیر را در آن قرار دهید:

version: '3.8'

services:
  postgres:
    image: postgres:16-alpine
    restart: always
    environment:
      - POSTGRES_USER=n8n
      - POSTGRES_PASSWORD=StrongDBPasswordHere
      - POSTGRES_DB=n8n
    volumes:
      - ./db_data:/var/lib/postgresql/data

  n8n:
    image: docker.n8n.io/n8nio/n8n:latest
    restart: always
    ports:
      - "127.0.0.1:5678:5678"
    environment:
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_PORT=5432
      - DB_POSTGRESDB_DATABASE=n8n
      - DB_POSTGRESDB_USER=n8n
      - DB_POSTGRESDB_PASSWORD=StrongDBPasswordHere
      - N8N_HOST=n8n.yourdomain.com
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - WEBHOOK_URL=https://n8n.yourdomain.com/
      - GENERIC_TIMEZONE=Asia/Tehran
    volumes:
      - ./n8n_data:/home/node/.n8n
    depends_on:
      - postgres

تنظیم متغیرهای محیطی و وب‌هوک‌ها

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

پیکربندی وب‌سرور معکوس Nginx و فعال‌سازی HTTPS

در وب‌سرور Nginx، یک کانفیگ سرور با قابلیت ارتقای وب‌سوکت اضافه نمایید:

server {
    listen 80;
    server_name n8n.yourdomain.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    server_name n8n.yourdomain.com;

    ssl_certificate /etc/letsencrypt/live/n8n.yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/n8n.yourdomain.com/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:5678;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

مدیریت بکاپ، آپدیت و پایش مداوم سرویس

برای به‌روزرسانی آسان n8n به آخرین نسخه، کافی است دستورات زیر را در پوشه پروژه اجرا کنید:

docker compose pull
docker compose up -d

همچنین از پوشه‌های db_data و n8n_data به صورت روزانه بکاپ بگیرید. تفاوت بکاپ و اسنپ‌شات را در مقاله تفاوت Snapshot و Backup بخوانید.

میزبانی پایدار اتوماسیون با سرورهای پرسرعت تراست هاست

برای اجرای بدون قطعی ورک‌فلوها و اتصال به ابزارهای هوش مصنوعی، از پلن‌های سرور مجازی لینوکس تراست هاست با منابع تضمین‌شده، دیسک‌های NVMe و آپ‌تایم ۹۹.۹٪ استفاده نمایید.

سوالات متداول

برای اجرای n8n چه میزان RAM نیاز داریم؟

برای پروژه‌های سبک و متوسط حداقل ۲ الی ۴ گیگابایت رم کافی است، اما در صورت اجرای نودهای هوش مصنوعی و اتوماسیون‌های سنگین، سرورهایی با ۸ گیگابایت رم پیشنهاد می‌شوند.

آیا نسخه self-hosted محدودیتی در اجرای گردش‌کارها دارد؟

خیر، نسخه سلف‌هاستد برخلاف نسخه ابری، هیچ محدودیتی در تعداد دفعات اجرای ورک‌فلوها ندارد و کاملاً رایگان است.

سرور مجازی ابری تراست هاست

مشاوره تراست‌هاست​

با متخصصان و کارشناسان به صورت رایگان!

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *