Ir al contenido
Empezar

Descripción general del autoalojamiento

Mildport se ejecuta en tu propia infraestructura — como una pila Docker Compose autónoma o en Kubernetes mediante el chart de Helm. Los archivos nunca salen de tu VPC, y las licencias se verifican sin conexión — el motor nunca llama a casa.

Servicio Rol
mildport El motor de importación + la API REST con clave de licencia (escucha en :8090).
mongo Metadatos, mapeos, registro de entrega.
pdf-probe Sidecar de decodificación — extracción de tablas PDF.
xlsx-decode Sidecar de decodificación — hojas de cálculo.
ocr Sidecar de decodificación — escaneos y fotos.
minio (opcional) Almacenamiento de objetos compatible con S3 para archivos grandes.

Si tu entorno ya corre Postgres, FerretDB es una opción experimental verificada — la misma cadena de conexión, no una base de producción para la que mantengamos soporte.

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

Comprueba la salud:

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

El motor incluye una comprobación preflight que se niega a dejarte desplegar mal — valida claves, almacenamiento, accesibilidad de los sidecars y derechos antes de salir a producción. Ejecútala como parte de tu despliegue:

Terminal window
pnpm import:self-host-check

La distribución incluye un chart de Helm que despliega el motor y los sidecars de decodificación en tu propio clúster — MongoDB y S3/MinIO los aportas tú. Cada sidecar se puede desactivar individualmente, un modo all-in-one agrupa el motor y los tres sidecars de decodificación en un único pod (el matching semántico sigue en un pod aparte, desactivable), y helm test ejecuta el mismo preflight dentro del clúster antes de salir a producción:

Terminal window
helm install mildport ./deploy/helm/mildport -n mildport --create-namespace \
-f values.prod.yaml
helm test mildport -n mildport # ejecuta el preflight de self-host en el clúster

Junto al chart se incluye un runbook air-gap: replica las imágenes en tu propio registro, define los overrides de imagen y aloja tú mismo el worker de pdf.js — sin necesidad de red saliente.

Siguiente: Tu primer import · Solución de problemas · Licencias.