STORE MORE. FIND MORE. DO MORE.

Object storage.
Already searchable.
Object storage.
Already searchable.

Keldra combines object storage, search and permissions in one platform, so your data stays in your infrastructure and is easy to find, use and control.
Stop juggling separate tools. Keep things simpler, more secure and more cost-effective — with Keldra running on your infrastructure.
Get your free licence: 10 TB, 3 nodes, 48 total CPU units.
GET STARTED IN MINUTES

Three simple steps

1

Run Docker

Start Keldra using Docker on your infrastructure.
export KELDRA_IMAGE=ghcr.io/keldra-store/keldra:0.22.0 umask 077 mkdir -p keldra-data head -c 64 /dev/urandom > keldra-data/token-signing-key chmod 0600 keldra-data/token-signing-key docker run --rm --user 0 \ -v "$PWD/keldra-data/token-signing-key:/key" \ "$KELDRA_IMAGE" chown 10001:10001 /key docker volume create keldra-demo-data docker run --rm --user 0 -v keldra-demo-data:/var/lib/keldra \ "$KELDRA_IMAGE" chown 10001:10001 /var/lib/keldra docker run -d --name keldra-demo \ -p 127.0.0.1:50051:50051 \ -v keldra-demo-data:/var/lib/keldra \ -v "$PWD/keldra-data/token-signing-key:/run/secrets/keldra-token-signing-key:ro" \ -e KELDRA_RUN_SYSTEM_BOOTSTRAP=true "$KELDRA_IMAGE" docker logs keldra-demo
2

Provision and upload with the CLI

Create your tenant and bucket, then upload your first file with the Keldra CLI.
openssl rand -hex 32 | tr -d '\n' > keldra-data/owner.secret docker cp keldra-data/owner.secret keldra-demo:/tmp/owner.secret docker exec --user 0 keldra-demo chown 10001:10001 /tmp/owner.secret docker exec keldra-demo keldra --endpoint http://127.0.0.1:50051 \ --credentials-file /var/lib/keldra/system-bootstrap-credential.json \ provision-tenant example example-owner example-client \ --owner-client-secret-file /tmp/owner.secret docker cp keldra-demo:/var/lib/keldra/system-bootstrap-credential.json \ keldra-data/system-bootstrap-credential.json chmod 0600 keldra-data/system-bootstrap-credential.json docker exec --user 0 keldra-demo rm /var/lib/keldra/system-bootstrap-credential.json docker exec -e KELDRA_CLIENT_ID=example-client keldra-demo \ keldra --endpoint http://127.0.0.1:50051 \ --client-secret-file /tmp/owner.secret create-bucket objects printf 'hello from Keldra\n' > keldra-data/hello.txt docker cp keldra-data/hello.txt keldra-demo:/tmp/hello.txt docker exec --user 0 keldra-demo chown 10001:10001 /tmp/hello.txt docker exec -e KELDRA_CLIENT_ID=example-client keldra-demo \ keldra --endpoint http://127.0.0.1:50051 \ --client-secret-file /tmp/owner.secret \ put example objects greetings/hello.txt /tmp/hello.txt \ --content-type text/plain --command-id first-upload
3

Download with curl

Retrieve that same file with an authenticated curl request and compare the bytes.
printf 'user = "example-client:%s"\n' "$(cat keldra-data/owner.secret)" \ > keldra-data/curl.credentials chmod 0600 keldra-data/curl.credentials curl --fail --show-error --config keldra-data/curl.credentials \ --aws-sigv4 'aws:amz:eu-west-2:s3' \ http://127.0.0.1:50051/objects/greetings/hello.txt \ --output keldra-data/downloaded.txt cmp keldra-data/hello.txt keldra-data/downloaded.txt

Fewer services. A more capable platform.

Keldra brings together storage, search and permissions, so you can do more with fewer moving parts. Run it on your own infrastructure and keep control from day one.

Fewer separate services

Replace a patchwork of storage, search and access tools with one cohesive platform. Simpler to run, easier to manage, less to go wrong.

Your own infrastructure

Deploy on the infrastructure you already trust. Keep your data where you need it, with full control over security, placement and costs.

Storage + search + permissions

Store files, index supported data and control access in one platform. Find what you need without maintaining another copy just for search.

Fewer separate services

Replace a patchwork of storage, search and access tools with one cohesive platform. Simpler to run, easier to manage, less to go wrong.

Your own infrastructure

Deploy on the infrastructure you already trust. Keep your data where you need it, with full control over security, placement and costs.

Storage + search + permissions

Store files, index supported data and control access in one platform. Find what you need without maintaining another copy just for search.

Includes a free licence to get started

10 TB storage · 3 nodes · 48 total CPU units
Five additional free development licences cover 25 GB each.
No credit card required.