Requirements
System prerequisites and hardware recommendations for running DocuStore.
System Requirements
DocuStore runs as a set of Docker containers. You need:
- Docker Engine 24+ with Docker Compose v2
- uv (Python 3.12+) and Node.js with pnpm for local development, where the DocuStore processes run on the host
- RAM: 8 GB minimum (16 GB recommended for LLM activities)
- Disk: 20 GB for base images + storage for documents
- CPU: 4+ cores recommended (embedding and OCSR are CPU-intensive)
Infrastructure Components
DocuStore depends on the following services (all included in the Docker Compose stack). Host ports are those published by the dev compose file (services/docker-compose.yml); EventStoreDB, Temporal, and PostgreSQL are deliberately remapped off their usual ports:
| Service | Purpose | Host Port |
|---|---|---|
| EventStoreDB | Event sourcing (append-only event log) | 2114 |
| MongoDB | Read model projections (query-optimized views) | 27017 |
| Qdrant | Vector search (3 collections: text, summary, SMILES) | 6333 |
| Temporal | Workflow orchestration (durable task execution) | 7234 |
| PostgreSQL | Temporal server state storage | 5435 |
| Kafka | Event streaming for plugin system | 19092 |
LLM Provider
DocuStore requires an LLM provider for summarization, NER, and chat. Supported providers:
- Ollama (local, free) — recommended for development
- OpenAI (API key required)
- Anthropic (API key required)
- Google Gemini (API key required)
Embedding Model
Text embeddings use ibm-granite/granite-embedding-english-r2 (768-dim) by default. It runs locally inside the DocuStore workers via sentence-transformers, needs no GPU, and is downloaded from Hugging Face on first use. API models (OpenAI, Gemini, OpenRouter) are also supported; see Embedding Models.