Skip to content

Install YantrikDB Server (Linux, macOS, Windows)

YantrikDB Server is a multi-tenant network database for cognitive memory. It exposes the YantrikDB engine over a wire protocol and HTTP gateway, with built-in embeddings, replication, automatic failover, and at-rest encryption.

BinaryPurposeSize
yantrikdbThe server (data plane + cluster member)~22 MB
yqlInteractive REPL client (like psql)~6 MB
yantrikdb-witnessVote-only daemon for 2-node failover~3 MB
Terminal window
brew tap yantrikos/tap
brew install yantrikdb # the server
brew install yql # interactive REPL client
brew install yantrikdb-witness # vote-only daemon for 2-node clusters

As of engine v0.7.0, YantrikDB ships with a bundled default embedder (potion-base-2M, ~7.9 MB, dim=64, pure Rust via model2vec-rs). No ONNX Runtime required for the default install — brew install yantrikdb is genuinely all you need. Higher-quality optional embedders (potion-base-8M at ~92% MiniLM and potion-base-32M at ~95% MiniLM) are downloadable on demand via set_embedder_named() from the yantrikos/yantrikdb-models repo, SHA-256 pinned in the engine binary.

Three pre-built multi-arch images on GitHub Container Registry:

Terminal window
# Server (full data node)
docker pull ghcr.io/yantrikos/yantrikdb:latest
# Interactive client
docker pull ghcr.io/yantrikos/yql:latest
# Witness daemon (vote-only, 2-node cluster tiebreaker)
docker pull ghcr.io/yantrikos/yantrikdb-witness:latest

Run a single-node server:

Terminal window
docker run -d \
--name yantrikdb \
-p 7437:7437 -p 7438:7438 \
-v yantrikdb-data:/var/lib/yantrikdb \
ghcr.io/yantrikos/yantrikdb:latest

Run yql against it:

Terminal window
docker run --rm -it \
--network host \
ghcr.io/yantrikos/yql:latest \
--host localhost -p 7438 -t ydb_xxxxxxxx...

For a full 3-node cluster, use the docker-compose.yml example in the repo.

Terminal window
cargo install yantrikdb-server
cargo install yql
cargo install yantrikdb-witness

This builds from source against your local glibc — useful on older Linux distros where the pre-built binaries don’t run. Requires the Rust toolchain.

Terminal window
# Linux
wget https://github.com/yantrikos/yantrikdb-server/releases/latest/download/yantrikdb-linux-amd64
wget https://github.com/yantrikos/yantrikdb-server/releases/latest/download/yql-linux-amd64
chmod +x yantrikdb-linux-amd64 yql-linux-amd64
sudo mv yantrikdb-linux-amd64 /usr/local/bin/yantrikdb
sudo mv yql-linux-amd64 /usr/local/bin/yql

Other platforms available on the releases page:

  • yantrikdb-windows-amd64.exe
  • yantrikdb-macos-arm64 (Apple Silicon)
  • yantrikdb-macos-amd64 (Intel)

Each binary is also published for yql and yantrikdb-witness.

MethodBest for
HomebrewMac developers — fastest
DockerReproducible deployments — isolated, multi-arch, easy to upgrade
CargoOlder Linux distros, contributors, anyone with Rust installed
Pre-built binaryServers with no package manager / no Rust toolchain

Optional: ONNX Runtime for fastembed-based embedders

Section titled “Optional: ONNX Runtime for fastembed-based embedders”

You don’t need ONNX for the default install. As of engine v0.7.0, YantrikDB ships with a bundled potion-base-2M static embedder (pure Rust, no ONNX, ~7.9 MB, dim=64). It works out of the box for most agent-memory workloads.

ONNX Runtime is only needed when you opt into a fastembed-based embedder for higher recall quality (typically BGEBaseENV15, dim=384). For that, you need ORT 1.23+ available at runtime:

Terminal window
# Debian 13 / Ubuntu 24.04+
sudo apt-get install libonnxruntime1.21
# Or download from Microsoft directly:
wget https://github.com/microsoft/onnxruntime/releases/download/v1.24.4/onnxruntime-linux-x64-1.24.4.tgz
tar xzf onnxruntime-linux-x64-1.24.4.tgz
sudo cp onnxruntime-linux-x64-1.24.4/lib/libonnxruntime*.so* /usr/local/lib/
sudo ldconfig
export ORT_DYLIB_PATH=/usr/local/lib/libonnxruntime.so.1.24.4
Terminal window
brew install onnxruntime
export ORT_DYLIB_PATH=$(brew --prefix onnxruntime)/lib/libonnxruntime.dylib

Install ONNX Runtime via Microsoft’s release page and set ORT_DYLIB_PATH to onnxruntime.dll.

If you don’t want server-side embedding (clients send pre-computed vectors):

yantrikdb.toml
[embedding]
strategy = "client_only"

Linux binaries are built on Ubuntu (glibc 2.39). They run on:

  • ✅ Debian 13 (trixie) and newer
  • ✅ Ubuntu 22.04 and newer
  • ✅ Fedora 38 and newer
  • ❌ Debian 12 (bookworm) — glibc 2.36, too old

If you’re on an older distro, install from cargo install yantrikdb-server which builds against your local glibc.

Terminal window
yantrikdb --help
yql --help
yantrikdb-witness --help