Install SkelaDB

Start here: what your cluster needs, the commands, and every guide for running SkelaDB in production.

What you need

A Kubernetes cluster

Version 1.29 or later with kubectl admin access. EKS, GKE and AKS profiles are in preview.

cert-manager and an Issuer

Every connection uses TLS. The installer asks cert-manager for each certificate.

An object storage bucket

S3, Google Cloud Storage or Azure Blob, plus a workload identity per project that can reach only its own prefix.

A storage class

Any CSI class, for WAL nodes, caches and projects you put on dedicated disks.

A license key

Free for organizations under $1M in annual revenue. Request one before you install.

cosign

To check the release signature before you run anything from it.

Get your free license key

Tell us your organization name and confirm it has under $1M in annual revenue. We email a signed key, usually within one business day.

Request a free keyHow license keys work

Download, configure, apply

Pick your provider, then run three steps. The installer checks your cluster and waits until everything is ready.

  • Signed bundle, checked before use
  • Images pinned by digest
  • Run apply again to upgrade
Read the full install guide
# 1. Download the release and check its signature
V=0.0.1; R=https://skeladb.com/releases/$V
curl -fsSLO https://skeladb.com/releases/cosign.pub && sha256sum cosign.pub  # compare with the fingerprint in the verify guide
for f in skeladb-$V.tar.gz SHA256SUMS SHA256SUMS.cosign.bundle; do curl -fsSLO $R/$f; done
cosign verify-blob --key cosign.pub --bundle SHA256SUMS.cosign.bundle SHA256SUMS
sha256sum -c SHA256SUMS --ignore-missing && tar xzf skeladb-$V.tar.gz && cd skeladb-$V
# 2. Configure: pinned image digests, your license key, then your cloud
set -a; . ./release.env; set +a
export SKELA_LICENSE_KEY=<your license key>
export SKELA_INSTALL_PROVIDER=aws SKELA_STORAGE_CLASS=gp3
export SKELA_BACKUP_BUCKET=my-skeladb-data
export SKELA_NETWORK_CLOUD_CIDRS=<object storage and identity endpoint CIDRs>
export SKELA_TLS_ISSUER=skela-issuer SKELA_TLS_DNS_NAME=sql.example.com
export SKELA_KUBE_CONTEXT=$(kubectl config current-context)
# cert-manager and your Issuer must already exist; the installer creates the API tokens
# 3. Render, review, apply
./install.sh render > install.yaml
./install.sh apply

Add the console

The web console is optional. Install it after the platform with its own settings.

  • A WorkOS environment for sign-in
  • A PostgreSQL 18 management database
  • A hostname and TLS for the console
Set up the console
# After the platform: a WorkOS environment, a management database and regions.json
kubectl create namespace skela-cloud
# Settings for the API and worker, and for the console (see the Console guide)
kubectl -n skela-cloud create secret generic cloud-config --from-env-file=cloud.env
kubectl -n skela-cloud create secret generic console-config --from-env-file=console.env
kubectl -n skela-cloud create secret generic cloud-regions --from-file=regions.json
# Migrates the console database, then rolls out the API, worker and console
cloud/render.sh apply

After you install

Open the console

Create a project, pick a storage mode and connect with any client.

Connect your app

Use the connection string from the console. Pooling and wake-ups are handled for you.

Automate with the CLI

Create branches from CI, scripts or agents with the downloadable CLI.

Questions before you install?

Talk to the people who built it.