Добавить в корзинуПозвонить
Найти в Дзене
Qmedia.by

Как развернуть n8n в Docker на своем сервере: быстрый старт и базовая production-настройка

В современном мире, где рутина съедает до 40% рабочего времени, инструменты автоматизации становятся не роскошью, а необходимостью. Облачные сервисы вроде Zapier или Make удобны, но они накладывают ограничения по количеству операций и ставят критически важные бизнес-процессы в зависимость от внешнего дата-центра. Гораздо надежнее поднять автоматизацию у себя. Речь пойдет о n8n — платформе автоматизации с доступным исходным кодом и fair-code лицензированием, которую можно развернуть на собственном сервере и использовать для интеграции сервисов, передачи данных и построения сложных workflow. Что дает n8n вашему бизнесу: Процесс развертывания занимает буквально несколько минут, а контроль над данными остается полностью за вами. Для начала разберем, какую модель использования и управления выбрать. Для многих компаний self-hosting — это единственный способ соблюсти закон о персональных данных и внутренние требования безопасности. Если регламенты запрещают передачу данных клиентов на сторонн
Оглавление

В современном мире, где рутина съедает до 40% рабочего времени, инструменты автоматизации становятся не роскошью, а необходимостью. Облачные сервисы вроде Zapier или Make удобны, но они накладывают ограничения по количеству операций и ставят критически важные бизнес-процессы в зависимость от внешнего дата-центра.

Гораздо надежнее поднять автоматизацию у себя. Речь пойдет о n8n — платформе автоматизации с доступным исходным кодом и fair-code лицензированием, которую можно развернуть на собственном сервере и использовать для интеграции сервисов, передачи данных и построения сложных workflow.

Что дает n8n вашему бизнесу:

  • Экономия на подписках: В отличие от Zapier, вы не платите за каждое выполнение сценария и действия робота.
  • Конфиденциальность: Данные клиентов (из CRM, форм, чатов) не покидают ваш сервер.
  • Гибкость: Интеграция любых сервисов — от Telegram и Bitrix24 до нейросетей (OpenAI) и баз данных.
  • AI-агенты: Возможность встроить ИИ-логику в рабочие процессы компании без написания кода.

Процесс развертывания занимает буквально несколько минут, а контроль над данными остается полностью за вами.

Схема инфраструктуры
Схема инфраструктуры

Для начала разберем, какую модель использования и управления выбрать.

Почему стоит выбрать self-hosted n8n вместо облачных аналогов

Для многих компаний self-hosting — это единственный способ соблюсти закон о персональных данных и внутренние требования безопасности. Если регламенты запрещают передачу данных клиентов на сторонние зарубежные площадки, n8n на собственном сервере закрывает этот вопрос раз и навсегда.

У большинства компаний уже есть сервер, который оплачивается в любом случае — будь то выделенный сервер в дата-центре, VPS для сайта или внутренняя инфраструктура. В таком случае развернуть n8n — это практически бесплатное расширение функциональности, тогда как подписка на облачную версию n8n cloud или аналоги требует отдельных ежемесячных вложений.

Self-hosted n8n особенно выгоден, если у вас уже есть сервер и вы готовы самостоятельно поддерживать инфраструктуру. При этом сравнивать self-hosted и n8n Cloud нужно не по числу workflow, а по модели эксплуатации: в актуальных cloud-планах n8n заявлены unlimited users, unlimited workflows и every integration, а стоимость зависит от числа executions. Поэтому self-hosted выбирают в первую очередь ради контроля над данными, гибкости и отсутствия привязки к облачной модели оплаты.

Платить за n8n cloud ежемесячно имеет смысл только если у вас нет собственной инфраструктуры и вы не готовы тратить время даже на минимальную настройку. Self-hosted n8n часто выгоднее, если у вас уже есть сервер и вы готовы самостоятельно заниматься сопровождением.

Что нужно для установки n8n на сервере

Чтобы установка n8n прошла без сбоев, убедитесь, что ваша машина соответствует базовым критериям. Платформа не требовательна к ресурсам, особенно на старте.

Для корректной работы подойдет:

  • Операционная система: Ubuntu 22.04 LTS или новее (также поддерживаются Debian, CentOS, однако установка современного Docker на них может превратиться в проблему).
  • Ресурсы: 1 vCPU и 2 ГБ RAM — этого достаточно для запуска и 10−20 активных сценариев. Для тяжелых нагрузок с обработкой больших массивов данных рекомендуется увеличить RAM до 4 ГБ.
  • Дисковое пространство: минимум 20 ГБ SSD, так как n8n по умолчанию хранит историю каждого запуска (логи).
Желательно предусмотреть запас по диску, потому что n8n хранит execution history и связанные данные. Однако в актуальных версиях pruning включён по умолчанию, поэтому старые executions удаляются автоматически по сроку хранения и лимиту количества записей. На активных инстансах эти параметры всё равно стоит контролировать отдельно.

Если у вас уже настроен Docker, это значительно ускорит процесс. Для свежей установки мы будем использовать самый универсальный метод — запуск через Docker Compose.

Способ 1: Быстрый запуск (для тестирования)

Этот способ подходит для локального тестирования или ознакомления с n8n.

Шаг 1: Создание Docker volume для данных

docker volume create n8n_data

Шаг 2: Запуск контейнера

docker run -d \
--name n8n \
--restart unless-stopped \
-p 5678:5678 \
-v n8n_data:/home/node/.n8n \
docker.n8n.io/n8nio/n8n

Шаг 3: Доступ к интерфейсу

Откройте браузер и перейдите по адресу:

Локально: http://localhost:5678

На сервере: http://IP_ВАШЕГО_СЕРВЕРА:5678

Для production-развертывания используйте встроенную систему входа n8n. В актуальных версиях self-hosted n8n переменные N8N_BASIC_AUTH_* больше не поддерживаются, поэтому защищать интерфейс нужно через штатный экран входа n8n, HTTPS и ограничение сетевого доступа к сервису.

Способ 2: Production-установка с Docker Compose (рекомендуемый)

Этот способ подходит для установки n8n на Linux-сервер с постоянным хранением данных и дальнейшей настройкой reverse proxy и SSL.

Шаг 1: Установка Docker Engine через официальный репозиторий Docker

Если на сервере уже были установлены старые или конфликтующие пакеты, удалите их:
sudo apt remove docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc

Установите зависимости:
sudo apt update
sudo apt install -y ca-certificates curl gnupg

Добавьте официальный GPG-ключ Docker:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL
download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

Добавьте официальный репозиторий Docker:
echo \
«deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg]
download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo „$VERSION_CODENAME“) stable» | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Установите Docker Engine и Compose plugin:
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Проверьте установку:
docker --version
docker compose version

Шаг 2: Создание рабочей директории проекта

mkdir -p ~/n8n-project
cd ~/n8n-project

Шаг 3: Генерация ключа шифрования

Сгенерируйте ключ:
openssl rand -base64 32

Сохраните его: он понадобится в конфигурации.

Шаг 4: Создание файла docker-compose.yml

Создайте файл docker-compose.yml со следующим содержимым:
services:
n8n:
image: docker.n8n.io/n8nio/n8n:stable
container_name: n8n
restart: unless-stopped
ports:
- «127.0.0.1:5678:5678″
environment:
- N8N_HOST=n8n.ВАШ_ДОМЕН.by
- N8N_PORT=5678
- N8N_PROTOCOL=https
- N8N_EDITOR_BASE_URL=https://n8n.ВАШ_ДОМЕН.by/
- WEBHOOK_URL=https://n8n.ВАШ_ДОМЕН.by/
- N8N_PROXY_HOPS=1
- NODE_ENV=production
- N8N_ENCRYPTION_KEY=ВАШ_КЛЮЧ_ШИФРОВАНИЯ
- TZ=Europe/Minsk
- GENERIC_TIMEZONE=Europe/Minsk
- N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
volumes:
- n8n_data:/home/node/.n8n
healthcheck:
test: ["CMD-SHELL», «wget --spider -q
localhost:5678/healthz || exit 1"]
interval: 30s
timeout: 10s
retries: 3
volumes:
n8n_data:

Шаг 5: Запуск n8n

docker compose up -d

Проверьте, что контейнер запущен:
docker ps

Проверьте логи при необходимости:
docker compose logs -f

Настройка HTTPS и обратного прокси

Для безопасного доступа к n8n через HTTPS необходимо настроить обратный прокси с SSL-сертификатом.

Шаг 1: Настройка DNS

Создайте A-запись для вашего домена (например, n8n.ВАШ_ДОМЕН.by), указывающую на IP-адрес вашего сервера.

Шаг 2: Установка Nginx и Certbot

sudo apt update
sudo apt install nginx certbot python3-certbot-nginx -y

Шаг 3: Создание конфигурации Nginx

sudo nano /etc/nginx/sites-available/n8n

Добавьте следующую конфигурацию (замените n8n.ВАШ_ДОМЕН.by на ваш домен):
server {
listen 80;
server_name n8n.ВАШ_ДОМЕН.by;
location / {
proxy_pass localhost:5678;
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;
proxy_set_header X-Forwarded-Host $host;
# Поддержка WebSocket
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection «upgrade»;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
proxy_buffering off;
}
}

Шаг 4: Активация конфигурации

sudo ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

Шаг 5: Получение SSL-сертификата

sudo certbot --nginx -d n8n.ВАШ_ДОМЕН.by

Следуйте инструкциям на экране. Certbot автоматически обновит конфигурацию Nginx для работы с HTTPS.

Проверка работоспособности

Проверка доступа к интерфейсу

Откройте в браузере: n8n.ВАШ_ДОМЕН.by. Если всё настроено корректно, вы увидите страницу входа в n8n.

Если страница не открывается... Продолжение статьи читайте в нашем блоге Qmedia!