swarm-keydb

Deployment Guide

Use this guide for production-style Docker deployment and operational checks.

[!IMPORTANT] Bee-backed writes require a valid postage batch id. Without it, writes fail.

Docker run

docker pull scholtz2/swarm-keydb:zero-day
docker run --rm -p 6379:6379 -p 8080:8080 -p 9090:9090 \
  -e SWARM_KEYDB_BACKEND=bee \
  -e BEE_URL=http://host.docker.internal:1633/ \
  -e BEE_POSTAGE_BATCH_ID=<your-postage-batch-id> \
  -e METRICS_ENABLED=true \
  -e DASHBOARD_ENABLED=true \
  scholtz2/swarm-keydb:zero-day

Required environment variables

See full variable reference in docs/reference/configuration.md.

Health checks

curl http://localhost:8081/health
curl http://localhost:8081/ready
curl http://localhost:8081/backend

Prometheus integration

scrape_configs:
  - job_name: swarm-keydb
    metrics_path: /metrics
    static_configs:
      - targets: ['swarm-keydb:9090']

Existing deployment assets

Helm quick reference

helm repo add ethersphere https://ethersphere.github.io/helm
helm repo update
helm install --generate-name ethersphere/bee --namespace swarm-keydb --create-namespace

helm repo add swarm-keydb https://scholtz.github.io/swarm-keydb/
helm repo update
helm upgrade --install swarm-keydb swarm-keydb/swarm-keydb \
  --namespace swarm-keydb \
  --create-namespace \
  --set secret.beePostageBatchId=<your-postage-batch-id>

Default chart behavior uses https://bzz.limo for env.beeUrl. Override it with your Bee service DNS name if you want SwarmKeyDb to use the Bee pod you installed in-cluster.

For a full Bee + SwarmKeyDb Helm walkthrough, see docs/deployment/README.md.