Installation
Install Vaultaris using Docker, a pre-built binary, or by compiling from source.
Option 1 — Docker (recommended)
The official image is published to GitHub Container Registry:
docker pull ghcr.io/rustlanges/vaultaris:latest
Run with the minimum required environment variables:
docker run -d \
--name vaultaris \
-p 8080:8080 \
-e DATABASE_URL="postgres://user:pass@host:5432/vaultaris" \
-e JWT_SECRET="$(openssl rand -hex 32)" \
-e ENCRYPTION_KEY="$(openssl rand -hex 16)" \
ghcr.io/rustlanges/vaultaris:latest
Option 2 — Docker Compose (local development)
The repository ships a docker-compose.yml that includes PostgreSQL and Redis:
git clone https://github.com/Vaultaris/vaultaris.git
cd vaultaris
cp .env.example .env # edit as needed
docker compose up -d
Option 3 — Pre-built binary
Download the latest release from GitHub Releases:
# Linux x86_64
curl -L https://github.com/Vaultaris/vaultaris/releases/latest/download/vaultaris-linux-x86_64.tar.gz \
| tar xz
chmod +x vaultaris
./vaultaris
The binary reads configuration from environment variables. See Configuration.
Option 4 — Build from source
Requirements: Rust ≥ 1.85, libpq (PostgreSQL client library).
git clone https://github.com/Vaultaris/vaultaris.git
cd vaultaris
# Development build
cargo build
# Optimized release build (LTO enabled — takes ~2 min)
cargo build --release
# Run
DATABASE_URL="postgres://..." JWT_SECRET="..." ./target/release/vaultaris
Option 5 — Kubernetes / Helm
See the Kubernetes guide for the official Helm chart and manifests.
Database setup
Vaultaris auto-migrates on startup — no manual sqlx migrate step needed. Ensure the database user has CREATE TABLE privileges on first run.
The minimum PostgreSQL version is 14. The uuid-ossp and pgcrypto extensions are used internally and are created automatically.
Verifying the installation
curl http://localhost:8080/health
# → {"status":"healthy","version":"0.8.0",...}
curl http://localhost:8080/.well-known/openid-configuration
# → OIDC discovery document