Self-hosted Apps

n8n

Open-source платформа для автоматизации рабочих процессов: визуальные workflow из готовых нод, которые разворачиваются на своём сервере.

Что такое n8n

n8n — платформа автоматизации рабочих процессов. Сценарий собирается мышкой из узлов-нод в визуальном редакторе: «пришёл webhook → достали строку из PostgreSQL → отправили сообщение в Telegram-бот». Каждая нода — это готовый коннектор к сервису или блок логики (условие, цикл, преобразование данных).

Главное отличие от Zapier и Make: n8n можно развернуть на своём VPS. Тогда данные и API-ключи не уходят наружу, а число запусков не тарифицируется — вы платите только за сервер.

Название читается «n-eight-n» и происходит от nodemation: буква n, восемь букв, снова n.

Из чего состоит workflow

  • Триггер — то, с чего начинается запуск: расписание (Cron), входящий webhook, новое письмо, событие в чате. Без триггера workflow не запустится.
  • Ноды-действия — вызовы сервисов: Google Sheets, GitLab, Slack, S3, любая база данных.
  • Логика — IF, Switch, Merge, Loop Over Items, Wait.
  • Code-нода — произвольный JavaScript (или Python) там, где готовой ноды нет.
  • HTTP Request — универсальная нода к любому REST API, которая закрывает всё остальное.

Отдельный класс нод — работа с LLM: вызов моделей, векторные хранилища, агенты. Это одна из причин роста популярности n8n за последние годы.

n8n vs Zapier vs Make

n8n (self-hosted) Zapier Make
Где работает ваш сервер SaaSSaaS
Тарификация стоимость сервера за задачи/операции за операции
Данные не покидают контур у провайдера у провайдера
Свой код JavaScript/Python в ноде ограниченно ограниченно
Готовых интеграций сотни больше всех много
Обслуживание на вас не требуется не требуется

Практический вывод: Zapier выигрывает по числу коннекторов и «не надо думать», n8n — по цене на больших объёмах и по контролю над данными.

Как развернуть

services:
  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: always
    ports:
      - "5678:5678"
    environment:
      - N8N_HOST=n8n.example.com
      - WEBHOOK_URL=https://n8n.example.com/
      - N8N_ENCRYPTION_KEY=<длинная случайная строка>
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_PASSWORD=secret
      - GENERIC_TIMEZONE=Europe/Moscow
    volumes:
      - n8n_data:/home/node/.n8n

Два момента, на которых спотыкаются чаще всего:

  • N8N_ENCRYPTION_KEY шифрует сохранённые креденшелы. Потеряете ключ — потеряете все подключения к сервисам. Задайте его явно и положите в бэкап.
  • WEBHOOK_URL должен быть внешним HTTPS-адресом, иначе входящие вебхуки будут указывать на localhost. HTTPS вешают через Nginx или Traefik с SSL-сертификатом.

База данных и масштабирование

По умолчанию n8n пишет в SQLite — годится для проб, но не для продакшена. Для рабочей установки ставят PostgreSQL.

При росте нагрузки переключают queue mode: EXECUTIONS_MODE=queue, очередь на Redis, и несколько worker-процессов разбирают запуски параллельно. Так один тяжёлый workflow не блокирует остальные.

Не забудьте про EXECUTIONS_DATA_PRUNE — иначе история выполнений со временем раздувает базу.

Что нужно от сервера

Сам n8n нетребователен: для десятков workflow хватает 2 vCPU и 2 ГБ RAM. Требования растут не от числа сценариев, а от объёма данных внутри одного запуска — n8n держит items в памяти, и выгрузка большой таблицы одной нодой съедает RAM быстрее, чем что-либо ещё. Тяжёлые выборки разбивайте на батчи.

Лицензия

n8n распространяется по модели fair-code, а не как классический open source: исходники открыты, разворачивать у себя для своих задач можно бесплатно, но перепродавать n8n как сервис — нельзя. Для большинства команд это несущественно, для хостинг-провайдеров — принципиально.

Связанные термины

  • Webhook — самый частый триггер n8n
  • REST API — то, к чему ходит нода HTTP Request
  • Docker Compose — штатный способ установки
  • PostgreSQL — база для продакшен-установки
  • Redis — очередь в queue mode
  • VPS — где обычно живёт self-hosted n8n

Готовы запустить GPU-задачу?

Запустить GPU-сервер