Перейти к содержимому
Главная страница » n8n в Docker

n8n в Docker

Если вы успешно настроили Docker, Docker Compose и Portainer на своём сервере, значит мы готовы к развертке n8n. Ниже я расскажу вам о процессе настройки n8n, сосредоточившись исключительно на файле Docker Compose и его развёртывании с помощью Portainer.

При заказе Docker VPS, у вас уже установлен Docker и Portainer

Конфигурация Docker Compose

И так немного теории и перейдем к практике, для установки n8n в docker мы будем использовать упрощённый файл Docker Compose, адаптированный для n8n. За основу возьмем официальный образ (docker image) n8nio/n8n с DockerHub.

Вот конфигурация Docker Compose, которую мы будем использовать:

version: "3.9"

services:
  n8n:
    image: n8nio/n8n:latest
    container_name: n8n
    environment:
      - GENERIC_TIMEZONE=Europe/Amsterdam
      - NODE_ENV=production
      - N8N_SECURE_COOKIE=false
    ports:
      - "5678:5678"
    volumes:
      - n8n_data:/home/node/.n8n
    restart: unless-stopped

volumes:
  n8n_data:
    name: n8n_data

Из чего состоит Docker Compose

Давайте разберем ключевые компоненты этой конфигурации:

  • version: Указывает версию Docker Compose. Версия 3.9 широко поддерживается и подходит для большинства приложений.
  • services: Определяет запускаемые службы. В данном случае у нас есть одна служба с именем n8n.
    • image: Указывает используемый образ Docker. Мы используем последнюю версию n8nio/n8n, чтобы у вас были самые свежие функции и обновления безопасности.
    • container_name: Имя контейнера n8n для удобства идентификации в Portainer.
    • environment: устанавливает переменные среды, необходимые для работы n8n:
      • GENERIC_TIMEZONE: Устанавливает часовой пояс для n8n, обеспечивая корректную работу рабочих процессов.
      • NODE_ENV: Определяет режим среды. При значении production n8n оптимизируется для стабильной работы.
      • N8N_SECURE_COOKIE: Устанавливает требование для безопасного файла cookie. Если вы получаете доступ к своему экземпляру Docker по IP-адресу, этот параметр должен быть временно установлен на false. Рекомендуется настроить безопасное соединение напрямую.
  • volumes: Определяет n8n_data том, используемый для сохранения данных. Docker управляет этим томом, обеспечивая сохранение данных без ручного вмешательства.

Деплой n8n с помощью Portainer

Итак на нашем сервере уже развернут Portainer, откроем его.

Если, вы устанавливали Portainer самостоятельно на сервер, то обычно Portainer доступен по адресу http://IP адрес сервера:9000 или http://localhost:9000, если Portainer установлен на локальном компьютере.

Развертывание n8n с помощью Portainer выполняется просто благодаря интуитивно понятному графическому интерфейсу.

Создайте новый стек

Перейдите к стекам:

    В меню слева нажмите на Стеки.

    Добавьте новый стек, Нажмите кнопку + Добавить стек.

      Назовите свой Стек,Укажите имя для вашего стека, например n8n-stack, вставьте текст docker compose в редактор ниже.

      Развертывание стека:

      Нажмите «Развернуть стек». Portainer загрузит необходимый образ Docker и настроит контейнер в соответствии с вашей конфигурацией.

        Проверьте развертывание

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

        Осмотрите контейнер. Нажмите на название стека (n8n-stack), чтобы просмотреть подробную информацию. Убедитесь, что n8n контейнер запущен без ошибок.

          Доступ к n8n

          Как только стек развернут и контейнер запущен:

          Откройте n8n в вашем браузере:

          Перейдите в https://localhost:5678 если вы обращаетесь к нему локально или через IP-адрес вашего сервера (VPS/VDS) c Docker https://192.168.X.X:5678

          Нужно ответить еще на пару вопросов помощника и мы получаем рабочий вариант n8n за 5 минут.

          Так же на почту пришел бесплатный ключ активации n8n

          Ключ позволит использовать некоторые платные функции, такие, как: история рабочего процесса, отладка в редакторе, папки и пользовательский поиск при выполнении.

          Начальная настройка:

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

          Управление вашим экземпляром n8n

          Благодаря n8n, развёртываемому с помощью Docker Compose и управляемому с помощью Portainer, обслуживание вашей платформы автоматизации будет простым:

          • Обновление n8n:
            • Чтобы обновить n8n до более новой версии, вы можете использовать контейнер, например Watchtower, чтобы автоматически обновить n8n до последней версии. Другой вариант — повторно развернуть стек с помощью Portainer. Portainer загрузит обновлённый образ и перезапустит контейнер.
          • Резервное копирование данных:
            • Поскольку ваши рабочие процессы и конфигурации хранятся в томе n8n_data, регулярно создавайте резервные копии этого тома. Вы можете сделать это с помощью Portainer, экспортировав том, или с помощью команд Docker для резервного копирования данных тома.
          • Услуги по масштабированию:
            • Если вам нужно масштабировать экземпляр n8n или добавить дополнительные сервисы, обновите файл Docker Compose соответствующим образом и повторно разверните стек. Portainer применит изменения, обеспечив простоту масштабирования.

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

          Основные варианты использования n8n

          Автоматизация бизнес-процессов

          • Интеграция CRM, почты и мессенджеров (например, автоматическое создание сделок в Bitrix24 при новом письме в Gmail).
          • Обработка заказов (синхронизация заказов из интернет-магазина в 1С или Google Sheets).
          • Учет времени и задач (автоматическая фиксация рабочих часов в Toggl → отправка отчетов в Slack).

          Маркетинг и работа с клиентами

          • Автоматические email-рассылки (например, отправка персонализированных писем через SendGrid при подписке на сайт).
          • Парсинг и сбор данных (сбор отзывов с сайтов, соцсетей → сохранение в базу данных).
          • Чат-боты (интеграция Telegram/Discord с API для ответов на частые вопросы).

          Разработка и DevOps

          • Автоматизация деплоя (запуск сборки при push в GitHub/GitLab).
          • Мониторинг и алерты (если сервер упал → уведомление в Telegram/SMS).
          • Работа с базами данных (синхронизация PostgreSQL ↔ MySQL, автоматическое резервное копирование).

          Персональная автоматизация

          • Умный дом (если температура на датчике превысила 30°C → включить кондиционер через Home Assistant).
          • Автопостинг в соцсети (публикация контента в Twitter, Instagram, LinkedIn по расписанию).
          • Финансы (анализ расходов из банковского API → отчет в Google Sheets).

          Интеграция с AI и Machine Learning

          • Обработка естественного языка (отправка запросов в ChatGPT → сохранение ответов в Notion).
          • Анализ изображений (если в Telegram пришло фото → обработка через Computer Vision API).

          Почему n8n?

          ✅ Бесплатный (есть платная облачная версия, но self-hosted — бесплатно).
          ✅ Гибкий (можно писать кастомные функции на JavaScript/Python).
          ✅ Много коннекторов (1000+ интеграций через API, Webhooks, плагины).
          ✅ Локальный запуск (можно развернуть на своем сервере для безопасности данных).

          Пример простого workflow

          1. Триггер: Новое письмо в Gmail.
          2. Действие: Отправить уведомление в Slack.
          3. Доп. логика: Если в письме есть ключевое слово «срочно» → позвонить через Twilio.

          Добавить комментарий

          Ваш адрес email не будет опубликован. Обязательные поля помечены *