Skip to content

Self-hosting overview

Mildport runs as a self-contained Docker Compose stack in your own infrastructure. Files never leave your VPC, and licenses verify offline — the engine never phones home.

Service Role
mildport The import engine + license-keyed REST API (listens on :8090).
mongo Metadata, mappings, delivery log.
pdf-probe Decode sidecar — PDF table extraction.
xlsx-decode Decode sidecar — spreadsheets.
ocr Decode sidecar — scans and photos.
minio (optional) S3-compatible blob storage for large files.
Terminal window
cp .env.example .env # keys, Mongo, sidecars
docker compose up --build
✔ mildport listening on :8090
✔ mongo · pdf-probe · xlsx-decode · ocr

Check health:

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

The engine ships a preflight check that refuses to let you misdeploy — it validates keys, storage, sidecar reachability and entitlements before you go live. Run it as part of your deploy:

Terminal window
pnpm import:self-host-check
pnpm import:config-check

Next: Licensing.