Автоматизация процессов с n8n: установка и безопасная эксплуатация на VPS
Связывайте формы, почту, таблицы и API визуальными сценариями: n8n в Docker Compose, вебхуки и HTTPS.
Руководства · 1 мин чтения
n8n — инструмент автоматизации, позволяющий визуально связывать приложения и строить автоматические сценарии: отправить письмо при заполнении формы, записать новый заказ в таблицу, получить данные из API и отправить уведомление. На собственном сервере нет лимита запусков, а данные остаются у вас.
Требования
- Docker и Compose (см. Установка Docker).
- Домен (например,
automation.yourdomain.com) и HTTPS через Caddy. Вебхукам и защищённым cookie n8n нужен HTTPS. - Для большинства сценариев хватает 2 vCPU и 2–4 ГБ RAM.
1. Файл Compose
mkdir -p ~/n8n && cd ~/n8n
services:
n8n:
image: docker.n8n.io/n8nio/n8n
restart: unless-stopped
ports:
- "127.0.0.1:5678:5678"
environment:
- N8N_HOST=automation.yourdomain.com
- N8N_PROTOCOL=https
- WEBHOOK_URL=https://automation.yourdomain.com/
- GENERIC_TIMEZONE=Europe/Istanbul
- TZ=Europe/Istanbul
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
Главное — WEBHOOK_URL: укажите реальный HTTPS-адрес, чтобы адреса вебхуков, которые n8n отдаёт наружу, были корректными. Данные хранятся в томе n8n_data, он не удаляется.
2. Запустите и создайте учётную запись
docker compose up -d
docker compose logs -f n8n
Направив в Caddy automation.yourdomain.com на 127.0.0.1:5678, откройте адрес в браузере; при первом входе создайте учётную запись владельца.
3. Первый сценарий: форма → письмо
- Создайте новый сценарий и добавьте узел Webhook в качестве триггера.
- Сделайте рабочий URL вебхука адресом отправки формы на вашем сайте.
- Добавьте узел Send Email (SMTP) или узел чата/уведомлений и подставьте поля формы через выражения.
- Активируйте сценарий; используется рабочий, а не тестовый URL.
Безопасность
- Держите адреса вебхуков в секрете; по возможности включайте аутентификацию в узле Webhook (header/basic auth).
- Храните учётные данные (API-ключи, пароль SMTP) только в разделе Credentials n8n; не записывайте их открытым текстом в сценариях.
- Если интерфейс администратора открыт в интернет, используйте надёжный пароль и по возможности дополнительную защиту (VPN или ограничение по IP). Ещё безопаснее — запустить его только для себя через WireGuard.
- Обновление:
docker compose pull && docker compose up -d.
Резервные копии
Сценарии и учётные данные находятся в томе n8n_data. Регулярно экспортируйте их:
docker compose exec n8n n8n export:workflow --all --output=/home/node/.n8n/workflows.json
docker compose exec n8n n8n export:credentials --all --output=/home/node/.n8n/credentials.json
Файл с экспортированными учётными данными чувствителен; храните его в зашифрованном виде вне сервера. Делайте также снимки.
Начните с Melinhost
n8n уверенно работает даже на небольшом облачном сервере; по мере роста сценариев и числа запусков тариф легко повысить.