deploy/docker-compose.yml file stands up a single hyphae-server container, an external
PostgreSQL instance with the pgvector extension, and an optional Text Embeddings Inference
(TEI) sidecar, wired together with a named model-cache volume.
The server holds the HNSW mesh in RAM and rebuilds it from PostgreSQL on boot; PostgreSQL is the
system of record. For the model behind this topology, see /operations/deployment-operations.
What the stack contains
Prerequisites
- Docker and the Docker Compose plugin.
- Roughly 2 GB of free memory for a small mesh (the embedding model alone is ~400 MB–2 GB). See the capacity model in /operations/deployment-operations.
Bring the stack up
1
Clone the repository
The compose file ships under
deploy/.2
Set the bootstrap admin
On an empty registry the server needs See /operations/configuration for the full environment surface and
/quickstart for issuing agent credentials.
HYPHAEDB_BOOTSTRAP_ADMIN to create the first admin, who
can then issue credentials for other agents. Pass a name (a key is minted and logged once), or
name:hyk_<kid>_<secret> to pin the key — a supplied key must be hyk_<kid>_<secret>-shaped or
the server refuses to boot.3
Start the services
DATABASE_URL, runs migrations, warms the embedding
cache, rehydrates the mesh, and begins serving.4
Verify readiness
The server exposes liveness and readiness probes on the REST port. Readiness returns ready only
once the mesh has finished rehydrating.While the mesh is still loading,
/readyz returns 503 and its JSON body names the failing
probe ("graph": "loading") — the body is the first thing to read when the stack won’t go
ready.Choosing an embedding mode
The compose stack supports the embedding-packaging modes without any application change. Pick one withHYPHAEDB_EMBEDDING_PROVIDER:
The
model-cache volume is mounted at the embedding cache path so the first run pays the model
download once. Later restarts read a cache hit and never re-download.Default ports
Next steps
- Tune the server with /operations/configuration.
- Move to Kubernetes or a production posture with /operations/deployment.
- Connect a client from /sdks/python, /sdks/typescript, /sdks/go, or /sdks/rust.