ДОПОЛНИТЕЛЬНЫЙ МАТЕРИАЛ · УРОК 7
Как развернуть
n8n на VPS
Пошаговая инструкция — от аренды сервера до работающего n8n с доменом и SSL. Читайте когда будете готовы переходить с n8n Cloud на свой сервер.
⏱ ~60 минут
🖥 Ubuntu 22.04
🐳 Docker
🔒 SSL бесплатно
🖥 VPS сервер
Минимум: 1 CPU, 1GB RAM
Рекомендуем: 2 CPU, 2GB RAM
ОС: Ubuntu 22.04 LTS

Провайдеры:
Hetzner — от €4/мес (лучший выбор)
DigitalOcean — от $6/мес
Timeweb — от 290₽/мес
Beget — от 299₽/мес
🌐 Домен
Нужен для SSL и красивого адреса.

Где купить:
Namecheap — от $8/год
reg.ru — от 199₽/год
nic.kz — домены .kz

Пример: n8n.ваш-домен.com

После покупки нужно добавить A-запись в DNS которая указывает на IP вашего VPS.
⚠️ Это инструкция для продвинутых
Если вы только начинаете — используйте n8n Cloud. Переходите на VPS когда Cloud станет дорогим или нужен полный контроль над данными. Эта инструкция требует базового умения работать с командной строкой.
1
Арендуйте VPS с Ubuntu 22.04
Выберите провайдера, создайте сервер с ОС Ubuntu 22.04 LTS. После создания получите IP-адрес и root пароль (или SSH ключ).
2
Подключитесь к серверу по SSH
Mac / Linux — откройте Terminal:
ssh root@ВАШ_IP_АДРЕС
Windows — используйте PuTTY (скачать с putty.org) или Windows Terminal:
ssh root@ВАШ_IP_АДРЕС
Введите пароль который дал провайдер.
3
Обновите систему
apt update && apt upgrade -y
Дождитесь завершения — может занять 1-2 минуты.
4
Откройте нужные порты в файрволе
ufw allow 22/tcp # SSH ufw allow 80/tcp # HTTP ufw allow 443/tcp # HTTPS ufw enable
Введите y когда спросит подтверждение.
1
Установите Docker одной командой
curl -fsSL https://get.docker.com | sh
Это официальный скрипт от Docker — самый надёжный способ установки.
2
Проверьте что Docker работает
docker --version # Должно показать: Docker version 24.x.x
1
Запустите n8n контейнер
Замените ВАШ_ДОМЕН на ваш реальный домен, ВАШ_ПАРОЛЬ на надёжный пароль:
docker run -d \ --name n8n \ --restart unless-stopped \ -p 5678:5678 \ -v ~/.n8n:/home/node/.n8n \ -e N8N_HOST=ВАШ_ДОМЕН \ -e N8N_PROTOCOL=https \ -e WEBHOOK_URL=https://ВАШ_ДОМЕН/ \ -e N8N_BASIC_AUTH_ACTIVE=true \ -e N8N_BASIC_AUTH_USER=admin \ -e N8N_BASIC_AUTH_PASSWORD=ВАШ_ПАРОЛЬ \ n8nio/n8n
Флаг --restart unless-stopped означает что n8n запустится автоматически при перезагрузке сервера.
2
Проверьте что n8n запустился
docker ps # Должны видеть контейнер n8n со статусом "Up"
Временно проверить в браузере: http://ВАШ_IP:5678
Сначала — настройте DNS
Зайдите в панель управления доменом → DNS записи → добавьте A запись: имя n8n (или @), значение — IP вашего VPS. Подождите 5-15 минут пока DNS распространится.
1
Установите Nginx
apt install nginx -y
2
Создайте конфигурацию для n8n
nano /etc/nginx/sites-available/n8n
Вставьте этот текст (замените ВАШ_ДОМЕН):
server { listen 80; server_name ВАШ_ДОМЕН; 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_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_read_timeout 86400; proxy_buffering off; } }
Сохраните: Ctrl+X → Y → Enter
3
Включите конфигурацию и перезапустите Nginx
ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/ nginx -t # Должно показать: syntax is ok / test is successful systemctl restart nginx
1
Установите Certbot
apt install certbot python3-certbot-nginx -y
2
Получите SSL сертификат
certbot --nginx -d ВАШ_ДОМЕН
Certbot спросит email и попросит согласиться с условиями. Выберите опцию перенаправления HTTP на HTTPS. Сертификат обновляется автоматически каждые 90 дней.
3
Готово — открываем n8n
Перейдите на https://ВАШ_ДОМЕН — увидите n8n с HTTPS. Введите логин admin и пароль который задали при запуске контейнера.
🎉 n8n работает на вашем VPS
Теперь у вас собственный сервер с n8n который работает 24/7, имеет постоянный домен и SSL. Флоу запускаются даже когда все компьютеры выключены.
🔧 Управление n8n
# Остановить n8n docker stop n8n # Запустить n8n docker start n8n # Перезапустить n8n docker restart n8n # Смотреть логи docker logs n8n -f
🔄 Обновление n8n
# Скачать новую версию docker pull n8nio/n8n # Остановить и удалить старый docker stop n8n docker rm n8n # Запустить новый (та же команда # что использовали в шаге 3) docker run -d --name n8n ...
Данные сохранятся — они лежат в ~/.n8n
n8n не открывается по домену+
Проверьте три вещи: 1) DNS запись добавлена и прошло 15+ минут 2) Nginx запущен: systemctl status nginx 3) n8n контейнер работает: docker ps
Certbot выдаёт ошибку+
Скорее всего DNS ещё не распространился. Подождите ещё 10-15 минут и попробуйте снова. Проверить распространение DNS можно на сайте dnschecker.org.
Контейнер запускается и сразу останавливается+
Смотрите логи: docker logs n8n — там будет описание ошибки. Чаще всего проблема в неправильно указанном домене или уже занятом порте 5678.
Потерял флоу после обновления+
Если использовали флаг -v ~/.n8n:/home/node/.n8n — данные сохранены в папке ~/.n8n на сервере. Перезапустите контейнер с той же командой — флоу вернутся.
Как перенести флоу с n8n Cloud на VPS+
В n8n Cloud: меню флоу → Download → сохраните JSON. На VPS: создайте новый флоу → меню → Import from file → загрузите JSON. Credentials нужно добавить заново.