О n8n
n8n - инструмент для визуальной автоматизации рабочих процессов (workflow). На холсте вы соединяете узлы: вебхуки, HTTP-запросы, базы данных, почту, SaaS-сервисы. Если возможностей узла не хватает, в цепочку можно добавить код на JavaScript или Python. При самостоятельном хостинге данные и учётные данные хранятся на вашей машине, а не у третьей стороны.
После выдачи сервера скрипт из рецепта устанавливает Docker (если его нет) и запускает через Docker Compose из каталога /opt/n8n два контейнера: n8n (образ docker.n8n.io/n8nio/n8n:latest) и Caddy 2. n8n слушает только 127.0.0.1:5678. Caddy работает в хостовой сети, публикует сервис по HTTPS на порту 443 и проксирует запросы в n8n.
Сертификат самоподписанный (директива Caddy tls internal) и привязан к публичному IP-адресу сервера. При первом заходе браузер покажет предупреждение: пока к серверу не привязано доменное имя, так и должно быть. Данные n8n лежат в томе Docker (n8n_data), часовой пояс - Europe/Paris.
Что можно делать с n8n
Визуальный редактор workflow
Триггеры, условия и действия собираются на холсте. Каждый запуск можно разобрать по узлам, что заметно упрощает отладку.
Вебхуки и HTTP-запросы
Workflow может стартовать по входящему запросу или обращаться к любому REST API. Сервер уже настроен так, чтобы URL вебхуков строились с HTTPS.
Код на JavaScript и Python
Узел Code позволяет преобразовать данные или написать логику, которую не покрывают стандартные узлы, не выходя из workflow.
Данные на вашем сервере
Workflow, учётные данные и история запусков остаются в томе Docker
n8n_dataна вашем VPS в Париже или Франкфурте.HTTPS через Caddy сразу
n8n привязан к
127.0.0.1, а наружу открыт только Caddy на порту 443. Переход на полноценный сертификат сводится к правке одного файла.Автозапуск после перезагрузки
Оба контейнера объявлены с
restart: always. После перезагрузки сервера n8n и Caddy поднимаются без вашего участия.
Начало работы с n8n
От заказа до запуска за несколько минут.
- 1
Закажите VPS с n8n
Выберите Linux VPS в Париже или Франкфурте и отметьте n8n на вкладке «Приложения» в форме заказа. Доступны Debian 12, Debian 13, Ubuntu 20.04, 22.04 и 24.04.
- 2
Дождитесь выдачи и проверьте сервисы
Скрипт выполняется при первом запуске: устанавливает Docker и поднимает контейнеры, это занимает несколько минут. Подключитесь по SSH с данными из письма о выдаче сервера и убедитесь, что n8n и Caddy работают.
Bashcd /opt/n8n && docker compose ps - 3
Создайте аккаунт владельца
Откройте https://SERVER_IP в браузере и подтвердите предупреждение о самоподписанном сертификате. n8n предложит создать аккаунт владельца: именно он администрирует экземпляр.
- 4
Переведите n8n на домен с HTTPS
Создайте DNS-запись A для YOUR_DOMAIN, указывающую на SERVER_IP, затем замените Caddyfile и переменные n8n. Caddy автоматически получит доверенный сертификат, если порты 80 и 443 доступны извне.
Bashcd /opt/n8n cat > Caddyfile <<'EOF' YOUR_DOMAIN { reverse_proxy 127.0.0.1:5678 } EOF sed -i 's|N8N_HOST=.*|N8N_HOST=YOUR_DOMAIN|; s|WEBHOOK_URL=.*|WEBHOOK_URL=https://YOUR_DOMAIN/|' docker-compose.yml docker compose up -d docker compose restart caddy
Сценарии использования n8n
Синхронизация бизнес-инструментов
Новая заявка из формы создаёт карточку в CRM, отправляет письмо с подтверждением и уведомляет команду в мессенджере. Всё это умещается в одном workflow.
Обработка входящих вебхуков
Платежи, события Git-репозиториев или алерты мониторинга могут запускать workflow, которые фильтруют, обогащают и перенаправляют события. Для этого нужен домен с действительным сертификатом: большинство сервисов отклоняют самоподписанные.
Задачи по расписанию
Выгрузки из базы данных, еженедельные отчёты, очистка данных: триггер cron заменяет скрипты, разбросанные по нескольким машинам.
Подключение моделей ИИ
Из workflow n8n может обращаться к API языковых моделей, например чтобы классифицировать тикеты или кратко пересказать письма перед маршрутизацией нужному сотруднику.
Частые вопросы о n8n
Сертификат создаёт сам Caddy (tls internal) для IP-адреса сервера: публичные центры сертификации в такой конфигурации не выпускают сертификаты для IP. Шифрование работает, но сертификат не считается доверенным. Привяжите доменное имя, и Caddy получит действительный сертификат.
Подробнее о n8n
Установленные файлы
Всё находится в /opt/n8n: скрипт install-n8n.sh, файл docker-compose.yml и Caddyfile. Создаются три тома Docker: n8n_data (данные n8n, включая ключ шифрования учётных данных), caddy_data и caddy_config.
Переменные N8N_HOST и WEBHOOK_URL содержат публичный IP-адрес, определённый при установке. Если вы смените адрес или домен, обновите их: иначе URL вебхуков в интерфейсе будут неверными.
Файрвол
n8n напрямую не доступен снаружи, но порт 443 открыт через Caddy. Остальное лучше закрыть: достаточно SSH, порта 80 (он нужен для выпуска сертификата Let's Encrypt) и порта 443.
Bashufw allow 22/tcp ufw allow 80/tcp ufw allow 443/tcp ufw enable
Разрешите SSH до включения файрвола, иначе потеряете текущую сессию.
Резервные копии
Главное хранится в томе с данными n8n. Docker Compose добавляет к имени тома префикс по имени каталога проекта, поэтому сначала проверьте его командой docker volume ls (обычно это n8n_n8n_data), а затем заархивируйте том.
Bashdocker run --rm -v n8n_n8n_data:/data -v /root:/backup alpine \ tar czf /backup/n8n-data-$(date +%F).tar.gz -C /data .
Скопируйте архив за пределы сервера. Без ключа шифрования из этого тома сохранённые в n8n учётные данные восстановить нельзя.
Обновления
В файле Compose используется тег latest. Чтобы обновиться:
Bashcd /opt/n8n docker compose pull docker compose up -d
Сначала сделайте резервную копию. Для боевого экземпляра можно заменить latest в docker-compose.yml на конкретный номер версии и повышать его осознанно, прочитав примечания к релизу.
