ZeroDB Local
ZeroDB Local runs the whole stack on your own machine with Docker Compose — develop and test completely offline, then sync with ZeroDB Cloud when you're ready.
This is a multi-service Docker Compose stack, not a single pip-installable binary. Installing the
zerodb-local package gives you the project scaffold and CLI — the actual database, vector store, object storage, and API server still run as separate Docker containers.Seven services, one docker-compose up
Per the package's own published documentation (PyPI, zerodb-local v0.3.0), running docker-compose up -d starts these seven containers:
| Service | Technology | Port | Purpose |
|---|---|---|---|
| zerodb-postgres | PostgreSQL + pgvector | 5432 | Relational data + vector-capable columns |
| zerodb-qdrant | Qdrant | 6333 | Dedicated vector similarity search |
| zerodb-minio | MinIO | 9000/9001 | S3-compatible object storage for files |
| zerodb-redpanda | RedPanda | 9092 | Kafka-compatible event streaming |
| zerodb-embeddings | Embeddings service | 8001 | Local BAAI/bge-small-en-v1.5 embeddings — no API costs |
| zerodb-api | API server (FastAPI) | 8000 | Mirrors the ZeroDB Cloud API surface |
| zerodb-dashboard | Dashboard (React) | 3000 | Web UI for projects, vectors, tables, files, events |
Setup
cp .env.local.example .env.local docker-compose up -d docker-compose ps # confirm all 7 services are running curl http://localhost:8000/health
Requires Docker 20.10+, Docker Compose 2.0+, and at least 4GB RAM available to Docker. Once running, the dashboard is at http://localhost:3000 and the API server mirrors the cloud API's route surface at http://localhost:8000.
Why run it locally
- Work with no internet connection — nothing leaves your machine.
- Local embeddings via BAAI/bge-small-en-v1.5 — no per-call embedding API cost during development.
- Same code paths as the cloud API, so what works locally should work in the cloud.
- Bidirectional sync with ZeroDB Cloud when you want to push local work up.
What was verified, and how
- Current version (0.3.0) was confirmed against PyPI's live JSON API (
pypi.org/pypi/zerodb-local/json) this session, not assumed. - The 7-service list, ports, and setup commands above are copied from that same package's published description on PyPI, fetched this session — not reconstructed from memory.
- The local API server's and dashboard's actual runtime behavior (health endpoint response shape, dashboard screens) were not independently re-run in this sandbox — this page describes what the package publishes about itself, not a live local run performed in this session.
ZeroDB — part of AINative Studio