n8n — это инструмент рабочих процессов, который соединяет приложения, API и модели ИИ с помощью визуального редактора. Размещение его у себя означает, что ваши рабочие процессы, учётные данные и данные остаются на сервере, который вы контролируете, а запуски не тарифицируются. В этом руководстве n8n разворачивается с Docker Compose, базой данных Postgres и HTTPS, чтобы запускать ИИ-агентов круглосуточно.
Зачем VPS для агентов?
Агенты часто работают по расписанию или реагируют на вебхуки, поэтому им нужен всегда включённый и доступный сервер. VPS даёт фиксированный адрес для вебхуков и достаточно RAM, чтобы рабочие процессы отвечали быстро. Для небольшой конфигурации подойдёт тариф с 2 vCPU и 4 ГБ. Размеры смотрите на странице хостинга для ИИ-агентов, а если нужны локальные модели, добавьте GPU-сервер.
Перед началом
- VPS с Docker. См. установку Docker.
- Домен, указывающий на сервер. См. записи DNS.
Шаг 1: файл Compose
mkdir -p ~/n8n && cd ~/n8n
cat > compose.yaml <<'YAML'
services:
db:
image: postgres:16
restart: unless-stopped
environment:
POSTGRES_USER: n8n
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_DB: n8n
volumes:
- db:/var/lib/postgresql/data
n8n:
image: n8nio/n8n:latest
restart: unless-stopped
depends_on: [db]
environment:
DB_TYPE: postgresdb
DB_POSTGRESDB_HOST: db
DB_POSTGRESDB_USER: n8n
DB_POSTGRESDB_PASSWORD: ${DB_PASSWORD}
N8N_HOST: n8n.example.com
N8N_PROTOCOL: https
WEBHOOK_URL: https://n8n.example.com/
N8N_ENCRYPTION_KEY: ${ENCRYPTION_KEY}
GENERIC_TIMEZONE: UTC
ports:
- "127.0.0.1:5678:5678"
volumes:
- n8n:/home/node/.n8n
volumes:
db:
n8n:
YAML
Шаг 2: секреты
cat > .env <<ENV
DB_PASSWORD=$(openssl rand -hex 24)
ENCRYPTION_KEY=$(openssl rand -hex 32)
ENV
chmod 600 .env
Сделайте резервную копию ENCRYPTION_KEY. Без него n8n не сможет расшифровать сохранённые учётные данные.
Шаг 3: запустите n8n
docker compose up -d
docker compose logs -f n8n
Шаг 4: HTTPS
n8n.example.com {
reverse_proxy 127.0.0.1:5678
}
Перезагрузите Caddy, откройте сайт и создайте учётную запись владельца.
Шаг 5: создайте рабочий процесс агента
- Добавьте триггер Webhook или Schedule.
- Добавьте узел AI Agent и подключите чат-модель, например размещённый API или Ollama на вашем собственном GPU-сервере.
- Дайте агенту инструменты, такие как HTTP-запросы, база данных или узел обмена сообщениями.
- Проверьте ручным запуском, затем активируйте рабочий процесс.
Обеспечьте безопасность
- Привяжите n8n к 127.0.0.1 и открывайте наружу только HTTPS-прокси.
- По возможности защищайте вебхуки секретным заголовком или путём.
- Делайте резервные копии тома Postgres и тома n8n. См. резервное копирование с restic или borg.
- Обновляйте командой
docker compose pull && docker compose up -d, предварительно прочитав примечания к выпуску.