Layer 4 · self-hosting reality check
What it actually takes to self-host Docling
The docs say 2 GB. In practice you want 8 GB — the layout models are the memory cost. Here is the honest version — real requirements, real monthly cost, what you will be maintaining, and the one thing that catches people out.
Usually reached from AWS Textract alternatives, where Docling is one of the picks.
| RAM — documented minimum | 2 GB |
|---|---|
| RAM — what it really needs | 8 GB — the layout models are the memory cost |
| CPU | 4 vCPU; a GPU speeds large batches considerably |
| Disk | 2 GB for models plus your documents |
| Monthly cost | $0 on your own hardware. A 100,000-page corpus is a weekend of compute against a four-figure Textract invoice. |
| Setup time | 1 hour |
| How you install it | pip install docling; models download on first run |
| Ongoing maintenance | Low. |
| Where it stops scaling | Parallelises across CPU cores well. Throughput is bounded by page complexity, not volume. |
The thing that catches people out
The first run silently downloads gigabytes of layout and table models, so a container built without warming that cache re-downloads on every cold start — which turns a 3-second job into a 3-minute one in production. Bake the models into your image or mount a persistent cache directory.
When not to self-host Docling
Your corpus is handwritten. Textract is meaningfully better there and Docling is not close — route handwriting separately rather than migrating it.
Every guide here carries this section. A site that only ever tells you to self-host is selling something — the useful answer is sometimes no.
Other Layer 4 self-hosting guides
- Self-hosting Ollama8 GB VRAM for a 7B model at usable speed; 24 GB for 30B-class
- Self-hosting vLLM24 GB VRAM minimum for useful production serving
- Self-hosting QdrantVectors × dimensions × 4 bytes, in RAM, plus overhead — 1M × 768d is roughly 3 GB
- Self-hosting pgvector8 GB — the HNSW index wants to be resident
- Self-hosting LlamaIndex4 GB for the app; your vector store is the real cost
- Self-hosting faster-whisper5 GB VRAM for large-v3 in float16; 2 GB with int8
Common questions
- How much RAM does Docling actually need?
- 8 GB — the layout models are the memory cost in practice. The documented minimum is 2 GB, which is the figure at which the process starts rather than the figure at which it works under real use. 4 vCPU; a GPU speeds large batches considerably alongside it.
- What does self-hosting Docling cost per month?
- $0 on your own hardware. A 100,000-page corpus is a weekend of compute against a four-figure Textract invoice. This is commodity VPS pricing and excludes your time, which is the larger cost for most people — budget for low.
- How long does it take to set up Docling?
- 1 hour, via pip install docling; models download on first run.
- When should I NOT self-host Docling?
- Your corpus is handwritten. Textract is meaningfully better there and Docling is not close — route handwriting separately rather than migrating it.
- What is the most common mistake when self-hosting Docling?
- The first run silently downloads gigabytes of layout and table models, so a container built without warming that cache re-downloads on every cold start — which turns a 3-second job into a 3-minute one in production. Bake the models into your image or mount a persistent cache directory.