Установка n8n на VPS через Docker

В этом руководстве мы подробно рассмотрим процесс установки и настройки платформы n8n. Предполагается, что у вас уже есть арендованный виртуальный сервер VPS/VDS под управлением операционной системы Ubuntu 24.04.

Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти

Что такое n8n?

n8n — это инструмент с открытым исходным кодом, предназначенный для автоматизации бизнес-процессов и интеграции различных веб-сервисов. Ключевая особенность платформы — визуальный редактор, позволяющий создавать сложные сценарии (воркфлоу) простым перетаскиванием и соединением блоков (узлов) на графической схеме.

Каждый узел отвечает за конкретное действие (отправка HTTP-запроса, работа с базой данных, интеграция с CRM) или интеграцию со сторонним сервисом. Такой подход делает автоматизацию доступной даже для пользователей без опыта программирования.

Подготовка VPS для работы n8n

Начнем с настройки серверного окружения. Войдите на сервер под пользователем root или учетной записью с привилегиями sudo.

Обновление системных пакетов

Выполните команду для обновления списка пакетов и установки актуальных версий:

sudo apt update && sudo apt upgrade -y

Примечание: в процессе обновления может появиться запрос о конфигурации файла /etc/ssh/sshd_config. Если вы увидите уведомление о новой версии конфигурации, выберите вариант 2 (сохранить текущую версию или просмотреть различия), чтобы продолжить.

Установка Docker и Docker Compose

Прежде чем устанавливать Docker, необходимо добавить официальный репозиторий и подготовить систему. Выполните последовательно команды:

  1. Установите вспомогательные пакеты:
    sudo apt install -y ca-certificates curl gnupg lsb-release
  2. Создайте директорию для хранения GPG-ключей:
    sudo mkdir -p /etc/apt/keyrings
  3. Добавьте GPG-ключ репозитория Docker:
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
  4. Подключите сам репозиторий Docker:
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  5. Обновите список пакетов с учетом нового репозитория:
    sudo apt update
  6. Установите Docker и плагин Compose:
    sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

Установка и настройка n8n

Перейдем к развертыванию контейнера n8n.

Создание структуры проекта

Создайте рабочую директорию для приложения и перейдите в нее:

mkdir ~/n8n
cd ~/n8n

Настройка переменных окружения

Создайте файл с переменными окружения:

nano .env

Вставьте в него следующее содержимое, предварительно заменив yourdomain.com на реальное доменное имя, которое указывает на IP вашего сервера (через A-запись):

DOMAIN=yourdomain.com
N8N_BASIC_AUTH_ACTIVE=false
N8N_PORT=5678
N8N_PROTOCOL=https
N8N_HOST=${DOMAIN}
N8N_EDITOR_BASE_URL=https://${DOMAIN}
WEBHOOK_URL=https://${DOMAIN}/

Создание docker-compose.yml

Теперь создайте конфигурационный файл для Docker Compose:

nano docker-compose.yml

Добавьте в него следующее описание сервиса:

version: "3.8"
services:
 n8n:
 image: n8nio/n8n
 restart: unless-stopped
 ports:
 - "5678:5678"
 env_file:
 - .env
 environment:
 - N8N_BASIC_AUTH_ACTIVE=${N8N_BASIC_AUTH_ACTIVE}
 - N8N_HOST=${N8N_HOST}
 - N8N_PORT=${N8N_PORT}
 - N8N_PROTOCOL=${N8N_PROTOCOL}
 - N8N_EDITOR_BASE_URL=${N8N_EDITOR_BASE_URL}
 - WEBHOOK_URL=${WEBHOOK_URL}
 volumes:
 - n8n_data:/home/node/.n8n
volumes:
 n8n_data:
Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти

Настройка Nginx и SSL-сертификата

Чтобы обеспечить безопасное соединение и корректную работу вебхуков, установите веб-сервер Nginx и выпустите SSL-сертификат.

Установка Nginx и Certbot

Выполните команду установки:

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

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

Создайте новый файл конфигурации для вашего домена:

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

Вставьте следующий код, заменив yourdomain.com на ваш домен:

server {
 listen 80;
 server_name yourdomain.com;
 location / {
 proxy_pass http://localhost:5678;
 proxy_http_version 1.1;
 proxy_set_header Upgrade $http_upgrade;
 proxy_set_header Connection 'upgrade';
 proxy_set_header Host $host;
 proxy_cache_bypass $http_upgrade;
 }
}

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

Активируйте сайт и перезагрузите Nginx:

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

Выпуск SSL-сертификата

Запустите Certbot для автоматического получения и настройки SSL:

sudo certbot --nginx -d yourdomain.com

В процессе вам потребуется:

  1. Ввести актуальный email-адрес для уведомлений.
  2. Согласиться с условиями использования (нажать Yes).
  3. Указать, нужно ли получать новости от EFF (по желанию — Yes или No).

Запуск n8n и начало работы

Запуск контейнера

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

cd ~/n8n
docker compose up -d

Дождитесь загрузки образа и старта контейнера.

Доступ в веб-интерфейсе

Откройте браузер и перейдите по адресу https://yourdomain.com (используйте ваш домен). Вы увидите страницу регистрации:

  1. Заполните поля для создания учетной записи администратора.
  2. При желании оставьте галочку для получения новостей о продукте.
  3. Нажмите Next.
  4. На следующем экране настройте параметры интерфейса под свои предпочтения и нажмите Get started.

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

Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти