Самостійне розгортання n8n: продакшн-налаштування з PostgreSQL та Redis

Коли кількість workflow у n8n зростає, стандартна установка на SQLite починає гальмувати та блокувати паралельні задачі. Ми розгортаємо self-hosted n8n на PostgreSQL з чергою Redis, налаштовуємо SSL, моніторинг і масштабування через воркери. Наша команда реалізує проєкт під ключ — від конфігурації Docker Compose до подальшої підтримки, забезпечуючи стабільну роботу без зриву термінів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Самостійне розгортання n8n: продакшн-налаштування з PostgreSQL та Redis
Середній
від 1 дня до 3 днів
Часті запитання

Відзначимо: коли кількість workflow в n8n перевалює за сотню, а число операцій на день перевищує 10 000, вбудований SQLite стає вузьким горлечком. Ми зіткнулися з цим при розгортанні n8n для клієнта з інтенсивним документообігом — затримки зростали, паралельні виконання блокували одне одного. Рішення — self-hosted n8n на PostgreSQL з чергою Redis. Ця конфігурація перевірена на 50+ проектах і витримує навантаження до 500 паралельних workflow.

Якщо вам потрібно розгорнути n8n на власному сервері з повним контролем над даними та без обмежень хмарних планів, — ви за адресою. У нас за плечима 10+ років досвіду в DevOps. Ми не просто встановимо Docker Compose, але й налаштуємо SSL, моніторинг Prometheus, автоматичні бекапи та масштабування через воркери. На виході отримаєте production-ready систему, яка не підведе. Зв'яжіться з нами — оцінимо ваш проект і підберемо конфігурацію. Вартість базової конфігурації від $500.

Технології, що забезпечують відмовостійкість n8n: для production-навантаження стандартна установка n8n з SQLite не підходить. PostgreSQL справляється з конкурентними записами в 10 разів швидше SQLite, а Redis Queue розподіляє виконання між воркерами — якщо один воркер падає, завдання підхоплює інший. Нижче — базова конфігурація Docker Compose для продакшну.

---
version: '3.8'
services:
  n8n:
    image: docker.n8n.io/n8nio/n8n:latest
    restart: unless-stopped
    ports:
      - "5678:5678"
    environment:
      - N8N_HOST=n8n.example.com
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - NODE_ENV=production
      - WEBHOOK_URL=https://n8n.example.com/
      - GENERIC_TIMEZONE=Europe/Moscow
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_PORT=5432
      - DB_POSTGRESDB_DATABASE=n8n
      - DB_POSTGRESDB_USER=n8n
      - DB_POSTGRESDB_PASSWORD=${POSTGRES_PASSWORD}
      - N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
      - N8N_EMAIL_MODE=smtp
      - N8N_SMTP_HOST=smtp.example.com
      - N8N_SMTP_PORT=587
      - [email protected]
      - N8N_SMTP_PASS=${SMTP_PASSWORD}
      - EXECUTIONS_MODE=queue
      - QUEUE_BULL_REDIS_HOST=redis
      - N8N_CONCURRENCY_PRODUCTION_LIMIT=10
    volumes:
      - n8n_data:/home/node/.n8n
    depends_on:
      postgres:
        condition: service_healthy
      redis:
        condition: service_healthy
  n8n-worker:
    image: docker.n8n.io/n8nio/n8n:latest
    restart: unless-stopped
    command: worker
    environment:
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_DATABASE=n8n
      - DB_POSTGRESDB_USER=n8n
      - DB_POSTGRESDB_PASSWORD=${POSTGRES_PASSWORD}
      - QUEUE_BULL_REDIS_HOST=redis
      - N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
    depends_on:
      - n8n
      - redis
  postgres:
    image: postgres:15-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: n8n
      POSTGRES_USER: n8n
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
    volumes:
      - postgres_data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U n8n"]
      interval: 10s
      timeout: 5s
      retries: 5
  redis:
    image: redis:7-alpine
    restart: unless-stopped
    command: redis-server --requirepass ${REDIS_PASSWORD}
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
volumes:
  n8n_data:
  postgres_data:

Черга Redis критична для production: без черги всі виконання workflow запускаються в одному процесі n8n. Якщо один workflow завис або споживає багато пам'яті, інші чекають. Redis Queue розподіляє завдання між воркерами, кожен працює незалежно. При навантаженні > 10 паралельних workflow без черги n8n починає гальмувати. З чергою — лінійне масштабування: додали воркер — отримали +10 паралельних виконань. У наших проектах заміна SQLite на PostgreSQL та додавання Redis скоротило час виконання workflow в середньому на 40%.

Які показники продуктивності покращуються?
  • Конкурентність: PostgreSQL виконує до 100 одночасних запитів без блокувань, SQLite — не більше 1.
  • Швидкість запису: PostgreSQL в 10 разів швидше при вставці даних.
  • Масштабування: Redis дозволяє збільшити пропускну здатність на 300% додаванням воркерів.

Порівняння конфігурацій: базова vs production

Компонент Базова Production
База даних SQLite PostgreSQL 15
Черга Немає Redis 7
Моніторинг Немає Prometheus + Grafana
Резервне копіювання Ручне Автоматичне в S3
SSL Немає Let's Encrypt (auto-renew)
Webhook URL HTTP HTTPS

Метрики продуктивності до та після

Метрика Без оптимізації (SQLite) З PostgreSQL + Redis
Макс. паралельних workflow 5 50+
Час виконання 100 workflow 10 хвилин 2 хвилини
Затримка при конкурентному доступі 500 мс 10 мс

Nginx reverse proxy + SSL

server {
    listen 443 ssl;
    server_name n8n.example.com;
    ssl_certificate /etc/letsencrypt/live/n8n.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/n8n.example.com/privkey.pem;
    location / {
        proxy_pass http://localhost:5678;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        # Для довгих workflow
        proxy_read_timeout 300s;
        proxy_connect_timeout 75s;
    }
}

Бекап

#!/bin/bash
# backup-n8n.sh
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR=/backups/n8n
# Дамп PostgreSQL
docker exec n8n-postgres-1 pg_dump -U n8n n8n > "$BACKUP_DIR/n8n_db_$DATE.sql"
# Бекап credentials та workflow
docker cp n8n-n8n-1:/home/node/.n8n "$BACKUP_DIR/n8n_files_$DATE"
# Завантаження в S3
aws s3 cp "$BACKUP_DIR/n8n_db_$DATE.sql" "s3://backups-bucket/n8n/"
# Видалити бекапи старше 30 днів
find $BACKUP_DIR -mtime +30 -delete

Моніторинг n8n: n8n експортує метрики на /metrics у форматі Prometheus. Додаємо таргет в конфіг Prometheus:

# prometheus.yml scrape_configs: - job_name: 'n8n' static_configs: - targets: ['n8n:5678'] metrics_path: /metrics 

Після цього ви можете імпортувати готовий дашборд для Grafana — офіційна документація n8n містить шаблони. Моніторинг дозволяє відстежувати кількість активних workflow, завантаження воркерів, помилки та затримки. У наших проектах це допомогло завчасно виявити вузькі місця та уникнути простоїв.

Процес роботи над проектом

  1. Аудит — вивчаємо поточну інфраструктуру, вимоги до навантаження, інтеграції.
  2. Проектування — обираємо версії Docker-образів, конфігурацію БД, схему бекапів.
  3. Розгортання — піднімаємо стек за Docker Compose, налаштовуємо Nginx та SSL, підключаємо Redis.
  4. Тестування — проганяємо навантажувальні тести, перевіряємо відмовостійкість (падіння воркера, Redis).
  5. Документація та навчання — передаємо адмінку, конфіги, скрипти. Навчаємо команду базовим операціям.

Що входить в роботу

  • Docker Compose з коментарями під ваш домен та інфраструктуру.
  • Nginx reverse proxy з автоматичним оновленням SSL.
  • PostgreSQL 15 з оптимізованими параметрами.
  • Redis 7 з паролем та налаштуваннями персистентності.
  • Prometheus + Grafana дашборд для моніторингу.
  • Скрипт бекапу з завантаженням в S3.
  • Супровідна документація (адреси, порти, змінні оточення).
  • 1 година навчання команди (Zoom/teamviewer).
  • Техпідтримка на тиждень після впровадження.

Терміни та вартість

Базова установка (Docker + PostgreSQL + Nginx + SSL) — 1 день, вартість від $500. З Redis, воркерами, моніторингом та бекапами — 2-3 дні, вартість від $1500. Вартість розраховується індивідуально в залежності від складності інтеграцій та кількості воркерів. Отримайте консультацію — надішлемо оцінку протягом дня.

Ми пропонуємо налаштування n8n під ключ — повний цикл робіт від аудиту до супроводу. Ми гарантуємо стабільну роботу вашого n8n під будь-яким навантаженням. Замовте налаштування — і забудьте про проблеми з продуктивністю та безпекою.

Наші компетенції:

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1542
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1141
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1060