Skip to content

Install the Server

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

Homebrew handles the ONNX Runtime dependency automatically (brew install onnxruntime is pulled in).

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, handles ONNX Runtime automatically
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

The server uses fastembed with the ONNX Runtime for built-in embeddings. 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