haiku.rag/docker/README.md
2026-05-26 11:44:45 +03:00

2.2 KiB

haiku.rag Docker Image

The full haiku.rag Docker image includes all features and extras (docling, voyageai, mxbai). You can build it locally using the provided Dockerfile.

Building the Image

Build the full image with all features:

docker build -f docker/Dockerfile -t haiku-rag .

This creates an image with:

  • All document processing capabilities (Docling)
  • VoyageAI embeddings
  • MixedBread AI reranking
  • Full feature set

Configuration

Create a configuration file haiku.rag.yaml:

# haiku.rag.yaml
environment: production

embeddings:
  model:
    provider: ollama
    name: nomic-embed-text
    vector_dim: 768

qa:
  model:
    provider: ollama
    name: qwen3

See Configuration docs for all available options.

Running

Mount your config file and data directory:

docker run -p 8001:8001 \
  -v /path/to/haiku.rag.yaml:/app/haiku.rag.yaml \
  -v /path/to/data:/data \
  haiku-rag

For continuous ingestion of a watched directory, run haiku-ingester in a separate container against the same data volume:

docker run \
  -v /path/to/haiku.rag.yaml:/app/haiku.rag.yaml \
  -v /path/to/data:/data \
  -v /path/to/docs:/docs \
  -p 8765:8765 \
  haiku-rag haiku-ingester --config /app/haiku.rag.yaml serve

Configure the watched directory in haiku.rag.yaml using the container path:

ingester:
  queue:
    path: /data/ingester.db   # persist queue in the data volume
  sources:
    - type: fs
      id: docs
      root: /docs             # container path, not host path
      delete_orphans: true

The MCP server running in the first container must be started with --read-only when an ingester is writing to the same database — LanceDB allows one writer and N readers per URI. See examples/docker/docker-compose.yml for a working two-service setup.

For API keys (OpenAI, Anthropic, etc.), pass them as environment variables:

docker run -p 8001:8001 \
  -v /path/to/haiku.rag.yaml:/app/haiku.rag.yaml \
  -v /path/to/data:/data \
  -e OPENAI_API_KEY=your-key-here \
  haiku-rag

Docker Compose

See examples/docker/ for a complete setup example.