Перейти к содержимому
Начать

Самостоятельное размещение: обзор

Mildport работает в вашей собственной инфраструктуре — как самодостаточный стек Docker Compose или в Kubernetes через Helm-чарт. Файлы никогда не покидают ваш VPC, а лицензии проверяются офлайн — движок никогда не «звонит домой».

Сервис Роль
mildport Движок импорта + REST API с ключом лицензии (слушает на :8090).
mongo Метаданные, сопоставления, журнал доставки.
pdf-probe Декодирующий sidecar — извлечение таблиц из PDF.
xlsx-decode Декодирующий sidecar — таблицы.
ocr Декодирующий sidecar — сканы и фото.
minio (опционально) S3-совместимое объектное хранилище для больших файлов.

Если у вас уже Postgres, FerretDB — проверенный экспериментальный вариант — та же строка подключения, не производственная база, под которую мы держим поддержку.

Terminal window
cp apps/import-service/.env.example apps/import-service/.env # keys, Mongo, sidecars
docker compose --env-file apps/import-service/.env up --build
✔ mildport listening on :8090
✔ mongo · pdf-probe · xlsx-decode · ocr

Проверьте состояние:

Terminal window
curl localhost:8090/health
# {"status":"ok","service":"mildport"}

Движок поставляется с проверкой preflight, которая не даёт вам развернуть неправильно — она проверяет ключи, хранилище, доступность sidecar-ов и права до выхода в продакшен. Запускайте её как часть вашего развёртывания:

Terminal window
pnpm import:self-host-check

В дистрибутив входит Helm-чарт, который разворачивает движок и декодирующие sidecar-ы в вашем собственном кластере — MongoDB и S3/MinIO вы подключаете свои. Каждый sidecar отключается отдельно, режим all-in-one собирает движок и три decode-sidecar в один под (семантический matching остаётся отдельным подом, его можно выключить), а helm test выполняет тот же preflight внутри кластера перед выходом в продакшен:

Terminal window
helm install mildport ./deploy/helm/mildport -n mildport --create-namespace \
-f values.prod.yaml
helm test mildport -n mildport # выполняет self-host preflight в кластере

Вместе с чартом поставляется air-gap-runbook: отзеркальте образы в собственный registry, задайте overrides образов и разместите worker pdf.js у себя — исходящая сеть не требуется.

Дальше: Первый импорт · Устранение неполадок · Лицензирование.