VM300 — прикладная виртуальная машина, выделенная для n8n: она выполняет workflow автоматизации, делегирует хранение данных сервисной ВМ (PostgreSQL) и использует ИИ-API отдельной GPU-ВМ. Такое разделение приложения, данных и вычислений позволяет каждому компоненту развиваться, обслуживаться и резервироваться по собственному жизненному циклу.
✅ Развёрнутое состояние
  • Ubuntu Server 24.04 LTS · Docker Engine + Compose
  • n8n 2.32.6 — закреплённый официальный образ
  • Единственный экземпляр, стандартный режим, без Redis
  • Внешний PostgreSQL — зашифрованное соединение, надёжная аутентификация
  • Удалённый API Ollama, используемый проверенным workflow
  • Интерфейс опубликован по HTTPS через общий обратный прокси
  • Устойчивость данных подтверждена после пересоздания контейнера и перезапуска
🔒 Безопасность текущего состояния
  • Прикладной порт остаётся во внутренней сети, публичный интерфейс открыт только по HTTPS
  • Системная фильтрация + контролируемая публикация Docker
  • Секреты и ключ шифрования вне Compose и вне Git
  • Закреплённый прикладной образ
  • Выделенные база данных PostgreSQL и роль, зашифрованное соединение
  • Нет прямого перенаправления из Интернета на VM300
  • Публичное происхождение, защищённые cookie, доверие ограничено обратным прокси
  • Инспекция workflow и используемых типов узлов
🧱 Внутренняя архитектура (VM300)
изоляция Docker · воспроизводимое развёртывание (Compose)
VM300
├── Ubuntu Server
├── Docker Engine
├── Docker Compose
└── conteneur n8n
    ├── moteur de workflows
    ├── interface d'administration
    ├── appels vers les services autorisés
    └── données binaires locales nécessaires

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

Внешние компоненты

🗄️ PostgreSQL (сервисная ВМ)
  • База данных, выделенная для приложения
  • Отдельная прикладная роль, права ограничены необходимым минимумом
  • Зашифрованное соединение · целевая сетевая фильтрация
  • Пересоздание n8n не удаляет ни учётные записи, ни workflow (данные хранятся вне контейнера)
🧠 Ollama (GPU-ВМ)
  • ИИ-вычисления вынесены на GPU-узел
  • VM300 обращается к разрешённому API Ollama, без GPU и без копии модели
  • Проверенный workflow: подготовка запроса → HTTP-вызов → ответ модели → нормализация вывода
🌐 Активная публикация в Интернете

Редактор опубликован по HTTPS по адресу n8n.stephanemuraro.fr (аутентифицированный административный интерфейс и URL webhook, генерируемые самим экземпляром), за обратным прокси VM200. Прикладной порт VM300 не открыт напрямую: каждый публичный запрос проходит через VM200, которая завершает HTTPS, выбирает сервис по запрошенному имени и перенаправляет только предусмотренные маршруты. Дальнейшее разделение под выделенным именем для webhook остаётся возможным, если подтвердится потребность в более строгой открытости.

путь публичного запроса
Utilisateur ou service externe
        ↓ HTTPS
Nom DNS public
        ↓
Routeur Internet
        ↓ trafic Web uniquement
VM200 — reverse proxy   (terminaison TLS · sélection par nom · routes autorisées)
        ↓ flux interne autorisé
VM300 — n8n
        ↓
PostgreSQL ou API IA selon le workflow
n8n знает свой публичный HTTPS-источник, доверяет ожидаемому прокси и использует защищённые cookie. Аутентификация, редактор, выполнение workflow, переподключение и устойчивость данных были проверены из Интернета (внешней сети).
🔄 Пример — workflow n8n к ИИ
workflow (иллюстративный)
Trigger : Webhook
   → Nœud HTTP  : préparation de la requête
   → Nœud HTTP  : appel API Ollama (LLM local sur la VM GPU)
   → Nœud Function : normalisation de la réponse pour les étapes suivantes
   → Réponse : JSON structuré
🎯 Применённые компетенции
  • Воспроизводимое развёртывание через Docker Compose
  • Разделение приложения, данных и GPU-вычислений
  • Зашифрованная интеграция PostgreSQL по принципу наименьших привилегий
  • Контролируемое использование удалённого API LLM
  • Проектирование устойчивых workflow
  • Подготовка публикации по HTTPS за обратным прокси
  • Управление секретами и снижение поверхности открытости
Ограничения и открытые задачи:

Связанные страницы

Ссылки и источники

КатегорияРесурсURL
Официальная документацияn8n — Documentationdocs.n8n.io
Официальная документацияPostgreSQL — Documentationpostgresql.org/docs
Развёрнутая версияn8n 2.32.6 · Ubuntu Server 24.04 LTS · VM300 (Docker)—
Лицензияn8n — Sustainable Use License (fair-code) · PostgreSQL — PostgreSQL Licensedocs.n8n.io — licence
Содержимое этой страницыПубликуется под CC BY-SA 4.0creativecommons.org/licenses/by-sa/4.0