Автоматизация

Как установить n8n: Docker, локально и на сервере

18.08.2026

Как установить n8n — вопрос, который возникает сразу после первого знакомства с платформой: облачная версия работает по подписке, а сам продукт можно поднять у себя и пользоваться им бесплатно. Способов несколько, и выбирать приходится не между «простым» и «сложным», а между разными задачами: попробовать на своём компьютере, поставить на сервер для постоянной работы или вовсе обойтись облаком. Ниже разобраны все рабочие варианты по официальной документации на август 2026 года — с командами, переменными окружения и честными оговорками там, где документация чего-то не называет.

Где скачать n8n и какой способ выбрать

Первое, что стоит понять: скачивать в привычном смысле нечего. У n8n нет установочного файла, который вы загружаете и запускаете двойным кликом. Настольное приложение существовало, но проект закрыт — репозиторий n8n-desktop-app заархивирован 15 августа 2025 года. Всё, что распространяется сегодня, — это Docker-образ docker.n8n.io/n8nio/n8n и исходный код на GitHub.

Установка через пакетный менеджер npm пока работает, но объявлена устаревшей. В документации прямо сказано, что npm-установки признаны устаревшими начиная с версии 3.0, а сама третья версия заявлена к выходу в октябре 2026 года; после неё продукт будет распространяться только через Docker. То есть выбирать npm сейчас — значит через некоторое время переезжать на Docker всё равно.

Отсюда простое правило: n8n docker — не один из вариантов, а основной путь. Дальше вопрос только в том, где этот контейнер будет работать.

Задача Что выбрать Что понадобится
Посмотреть и собрать пару сценариев для себя Локальная установка на свой компьютер Docker; на Windows — WSL
Постоянная работа, вебхуки, боты, расписания Установка на сервер (VPS) VPS с Docker, домен, обратный прокси с сертификатом
Не хочется ничего администрировать Облачная версия n8n Cloud Подписка, установка не нужна

Облачный вариант в этой статье не разбирается: там устанавливать нечего, вы просто регистрируетесь и работаете. Всё остальное — про самостоятельное размещение. Дополнительно на обзорной странице документации перечислены готовые инструкции под конкретные площадки: AWS, Azure, Google Cloud, DigitalOcean, Hetzner, Heroku, OpenShift. Механика везде одинаковая — контейнер, том с данными, переменные окружения, — различаются только детали конкретной панели управления.

Самый быстрый способ: установка одной командой

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

curl -fsSL https://get.n8n.io | sh

Скрипт создаёт папку n8n/, кладёт туда файл compose.yml и файл .env с настройками, после чего поднимает контейнер. В документации этот способ описан как замена старому подходу с npm install n8n и npx n8n, который перестанет работать с третьей версии.

Что получается на выходе: запущенный контейнер и каталог с двумя файлами, которые вы дальше правите руками, если понадобится. Это важное отличие от установки «в один клик» у других продуктов — здесь вы не теряете контроль над конфигурацией, а просто пропускаете этап её первичного написания. Захотите добавить базу данных или переменные — открываете созданные файлы и дописываете.

После запуска интерфейс открывается в браузере по адресу http://localhost:5678. Порт 5678 — значение по умолчанию для переменной N8N_PORT; вместе с ним по умолчанию заданы N8N_HOST со значением localhost и N8N_PROTOCOL со значением http. Если порт занят другим приложением, менять нужно именно эти значения, а не искать настройку внутри интерфейса.

Единственное ограничение способа — операционные системы. Для Windows он официально не заявлен, там придётся идти через WSL (об этом ниже) или писать compose-файл самостоятельно.

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

Второй путь — n8n docker compose, когда вы описываете конфигурацию сами. Он нужен, если планируется отдельная база данных, несколько контейнеров рядом или просто хочется держать всю настройку в одном понятном файле под контролем версий.

Здесь есть тонкость, из-за которой легко запутаться. Пример compose-файла в самой документации сейчас не минимальный: вместе с n8n он поднимает вспомогательный набор сервисов для работы с моделями, включая песочницу и поисковый компонент SearXNG. Указанное там требование в 4 ГБ оперативной памяти и 2 виртуальных ядра относится именно к этому полному набору, а не к одному n8n. Минимальные требования для голого n8n в документации не названы — и придумывать их за разработчиков не стоит.

Если нужен именно минимальный состав, ориентироваться лучше на официальный репозиторий примеров n8n-hosting. Там лежат готовые конфигурации разной сложности, включая вариант с PostgreSQL, где рядом с n8n поднимаются postgres:16 и отдельный контейнер-исполнитель задач.

Минимальный смысл конфигурации сводится к двум вещам — сам сервис и том для данных:

services:
  n8n:
    image: docker.n8n.io/n8nio/n8n
    ports:
      - "5678:5678"
    volumes:
      - n8n_data:/home/node/.n8n

volumes:
  n8n_data:

Вариант с PostgreSQL отличается тем, что рядом появляется контейнер базы данных, а в переменные окружения n8n добавляется DB_TYPE=postgresdb и группа переменных с префиксом DB_POSTGRESDB_* — адрес, имя базы, пользователь и пароль. Том при этом всё равно остаётся: в нём хранится не только база SQLite, но и ключ шифрования учётных данных.

Запуск и обновление в этом варианте выполняются одной парой команд, о которых подробнее в разделе про обновление. Есть и третий способ — одиночная команда docker run с указанием тома и переменных; она подробно разобрана в отдельной статье про создание ИИ-агента, поэтому здесь не дублируется. По результату она эквивалентна compose-варианту, просто всю конфигурацию приходится держать в истории команд, а не в файле.

Локально на своём компьютере

Локальная установка — нормальный способ разобраться с продуктом, не арендуя ничего заранее. Ограничение у неё одно, зато существенное: пока компьютер выключен или спит, сценарии не выполняются, а вебхуки недоступны из интернета. Для обучения и ручных запусков этого хватает, для рабочих ботов — нет.

macOS и Linux. Проще всего воспользоваться установочным скриптом из раздела выше или написать свой compose-файл. Никаких дополнительных прослоек не нужно, Docker работает напрямую.

n8n Windows. Здесь путь один — через WSL, подсистему Windows для Linux. Подойдёт либо Docker Desktop, настроенный на работу с WSL2, либо Docker Engine, установленный прямо внутри дистрибутива. Отдельно стоит запомнить рекомендацию из документации: файлы проекта нужно держать в файловой системе WSL, например в домашнем каталоге ~/n8n, и не размещать их в примонтированном разделе Windows по пути /mnt/c. Причина в производительности и правах доступа: при работе через /mnt/c файловые операции идут заметно медленнее, а с правами на файлы возникают проблемы. Ошибка распространённая, потому что открыть привычную папку в «Проводнике» кажется удобнее.

Где лежат данные. По умолчанию n8n использует базу SQLite: это файл database.sqlite в каталоге ~/.n8n. При запуске в Docker этот каталог живёт внутри контейнера по пути /home/node/.n8n, и именно поэтому его подключают как том. Там же хранится ключ шифрования учётных данных — тех самых, в которых лежат ваши токены и ключи от подключённых сервисов. Практический вывод простой: том с данными удалять нельзя. Снести контейнер и поднять новый — обычная операция; снести том — значит потерять и сценарии, и возможность расшифровать сохранённые учётные данные. По той же причине том нужен и тогда, когда вы переехали на PostgreSQL: база уедет в отдельный контейнер, а ключ шифрования останется на прежнем месте.

Установка n8n на сервер (VPS, Ubuntu)

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

Порядок действий выглядит так.

Сервер. Подойдёт обычный VPS с любым дистрибутивом, где ставится Docker; чаще всего это n8n ubuntu — Ubuntu просто самый распространённый вариант у хостеров. Никакой специфики у n8n здесь нет: ставится Docker, дальше всё как на локальной машине.

Домен. Нужен домен или поддомен, направленный на адрес сервера. Без него не получится ни выпустить сертификат, ни отдать внешним сервисам постоянный адрес для вебхуков.

Запуск. Дальше — тот же установочный скрипт или свой compose-файл. Отличие только в том, что на сервере вы почти наверняка захотите PostgreSQL и точно захотите шифрование трафика.

Обратный прокси с сертификатом. Официальная рекомендация по HTTPS — ставить перед n8n обратный прокси, который берёт на себя сертификаты; в документации в этой роли упоминаются Traefik и сетевой балансировщик нагрузки. Есть и второй путь — передать сертификат самому n8n через переменные N8N_SSL_CERT и N8N_SSL_KEY, но прокси считается основным вариантом. Готовые примеры лежат в том же репозитории n8n-hosting: конфигурация docker-caddy и вариант subfolderWithSSL для размещения в подкаталоге домена.

Переменные окружения. Это тот шаг, на котором чаще всего спотыкаются. n8n должен знать, по какому адресу его видят снаружи, иначе он будет формировать адреса вебхуков по внутренним данным контейнера, и внешние сервисы просто не смогут до него достучаться. За это отвечают N8N_HOST, N8N_PORT, N8N_PROTOCOL и отдельно N8N_WEBHOOK_URL — публичный адрес, который подставляется в вебхуки. Обратите внимание на имя: раньше переменная называлась WEBHOOK_URL, это имя признано устаревшим, и на него n8n выводит предупреждение. Задавать нужно новое. Плюс к этому за прокси задаётся N8N_PROXY_HOPS со значением, равным числу прокси перед приложением — при одном прокси это единица. Есть ещё N8N_EDITOR_BASE_URL для адреса редактора и N8N_LISTEN_ADDRESS для адреса, который слушает сам процесс.

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

Настройка после установки

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

Дальше n8n настройка сводится к нескольким вещам, которые лучше сделать до того, как накопятся сценарии.

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

База данных. SQLite по умолчанию — рабочий вариант, и для локальной установки или небольшого набора сценариев его достаточно: отдельный контейнер не нужен, всё лежит в одном файле. Переходить на PostgreSQL имеет смысл, когда сценариев и запусков становится много, история выполнений разрастается, а к базе хочется применять обычные средства резервного копирования. Из версий официально поддерживаются PostgreSQL 17 и 18, шестнадцатая версия оставлена для совместимости. Производные и совместимые движки вроде Aurora, AlloyDB и CockroachDB официальной поддержки не имеют — это прямо оговорено в документации.

Важная деталь: данные из SQLite в PostgreSQL сами не переезжают. Если переключить тип базы на уже работающей установке, вы получите чистый экземпляр без прежних сценариев. Поэтому решение о базе лучше принимать на старте, а перенос планировать отдельно.

Ключ шифрования. Учётные данные хранятся в зашифрованном виде, ключ по умолчанию создаётся при первом запуске и лежит в каталоге данных. Переменная N8N_ENCRYPTION_KEY позволяет задать его самостоятельно — это удобно, когда установку нужно воспроизвести на другой машине: без того же ключа сохранённые учётные данные расшифровать не получится.

Как обновлять n8n

Обновление в варианте с Docker Compose делается тремя командами: скачать свежий образ, остановить текущие контейнеры, поднять заново.

docker compose pull
docker compose down
docker compose up -d

В варианте с одиночным контейнером логика та же: скачать образ, остановить контейнер, удалить его и запустить заново с прежними параметрами. Том при этом не трогается, поэтому сценарии и учётные данные остаются на месте.

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

Про версии полезно знать, что параллельно развиваются две ветки. На 18 августа 2026 года актуальная стабильная версия — 2.34.6, выпущенная 14 августа 2026 года, и рядом существует ветка долгой поддержки 1.123.x для тех, кому важна стабильность, а не свежие возможности. Числа эти со временем изменятся — проверять их стоит на странице релизов в репозитории.

Что дальше

n8n установлен и открывается в браузере — дальше нужен первый работающий сценарий. Если платформа для вас новая, начните с разбора основ: что такое n8n и как устроены сценарии — узлы, триггеры, данные между ними. Если задача конкретнее и вам нужен ИИ-агент, есть отдельная пошаговая статья: как создать ИИ-агента в n8n. Там же разобрано подключение языковых моделей — в том числе через один ключ GEN202 с оплатой рублями, если официальные способы оплаты вам недоступны.

Частые вопросы

Можно ли установить n8n без Docker? Пока да — через npm, командой npm install n8n -g, для этого нужен установленный Node.js поддерживаемой версии (документация называет диапазон от 20.19 до 24.x). Но способ помечен как устаревший: начиная с версии 3.0 распространение планируется только через Docker. Если вы ставите n8n сейчас и рассчитываете пользоваться им дальше, разумнее сразу выбрать контейнер.

Работает ли n8n на Windows? Работает, но через WSL — либо Docker Desktop с включённой поддержкой WSL2, либо Docker Engine внутри дистрибутива. Отдельного установщика под Windows нет, а настольное приложение закрыто ещё в 2025 году. Файлы проекта держите в файловой системе WSL, а не в разделе Windows через /mnt/c.

Сколько ресурсов нужно серверу? Честный ответ: точной цифры для одного n8n документация не даёт. Требование в 4 ГБ памяти и 2 виртуальных ядра, которое встречается в официальном примере, относится к полному набору сервисов вместе со вспомогательной песочницей для работы с моделями, а не к самому n8n. Минимум для голой установки нигде не назван, поэтому ориентироваться приходится на собственную нагрузку.

Установка платная? Нет. Без лицензионного ключа n8n работает как Community edition, и самостоятельное размещение денег не стоит — платите вы только за сервер, если он вам нужен. Часть возможностей при этом доступна лишь в платных редакциях, но базовая работа со сценариями входит в бесплатную.

Как перенести n8n на другой сервер? Переносить нужно две вещи: том с данными, где лежит ключ шифрования и каталог n8n, и саму базу, если вы используете PostgreSQL. Отдельно помните, что содержимое SQLite при переключении на PostgreSQL автоматически не переносится — это отдельная задача, а не побочный эффект смены переменной.

Нужен ли домен? Для локальных экспериментов и ручных запусков — нет, хватит адреса localhost. Для вебхуков, ботов и любых сценариев, которые запускаются внешними сервисами, домен нужен: без него не выпустить сертификат и не отдать наружу постоянный адрес, на который эти сервисы будут присылать данные.