Топология
Как выглядит развёрнутая EVA: что входит в образ платформы, какие внешние зависимости нужны и как рядом располагаются сервисы экосистемы. Для тех, кто планирует установку.
Схема
Образ платформы
Один образ содержит все три процесса и собранный веб-интерфейс. Команда pnpm start запускает API, Runtime и Package-pool внутри одного контейнера. Веб-интерфейс раздаёт API, поэтому снаружи нужен только порт 3000.
Обязательные зависимости
| Что | Зачем |
|---|---|
| PostgreSQL 14 и новее | Вся конфигурация и состояние |
Постоянный том на /app/apps/api/.data | Файлы чатов, пакеты, артефакты, логи фоновых сервисов |
| Провайдер моделей | OpenAI-совместимый API: ZeBrains Gate, облако или свои модели |
| Ingress с TLS | Внешний адрес, SSE без буферизации |
Ключи провайдеров в окружении не задаются, их вводит администратор в интерфейсе.
Необязательные
| Что | Зачем |
|---|---|
| OnlyOffice Document Server | Предпросмотр DOCX, XLSX, PPTX |
| Каталог LDAP | Вход сотрудников |
| Корпоративный npm-реестр | Зависимости пакетов в закрытом контуре |
| Сервисы экосистемы | База знаний, извлечение текста, расшифровка, поиск |
Сетевые требования
- Процессы внутри пода общаются по
127.0.0.1. - Сервисы MCP должны видеть API по адресу из
PUBLIC_API_URL, если они обращаются к платформе. Не указывайте там127.0.0.1, когда MCP в другом контейнере. - Ingress не должен буферизовать ответы
text/event-stream, иначе поток ответа будет приходить рывками. - Загрузка файлов до 1 ГБ: увеличьте лимит тела запроса на Ingress.
Сервисы экосистемы
Сервисы разворачиваются отдельно, со своими ресурсами и своим циклом обновлений. EVA видит их только как источники MCP, поэтому их можно масштабировать, обновлять и переносить независимо. Сводка по развёртыванию сервисов: Развёртывание сервисов.