Dria Docker

Dria Docker enables you to use a Dria knowledge in your local environment!

It does this by setting up everything with Docker containers, which are exposed locally so that you can use them as if you are using the Dria API. As an overview, the containers work as follows:

  • HollowDB: A Node container runs a Fastify API wrapper for HollowDB. Behind the scenes, our HollowDB contracts store the bundled txIds, so to make use of this data, we have to unbundle them. This container downloads these txIDs and unbundles them to disk.

  • Dria HNSW: A distroless multi-platform container runs the Dria HNSW code, written in Rust. This is an Actix server that serves the downloaded & unbundled HNSW index to the user.

  • Redis: Both containers make use of Redis, which in particular allows HollowDB to keep its contract state.

All the data is stored on disk under ${HOME}/.dria/data, and these containers use that volume as they are running.

Usage

There are two ways to use Dria Docker:

In the end, the knowledge will be served by the Dria HNSW container, which is available at a local port. The available endpoints are listed here.

Last updated