Rune Gurd docs

Self-hosting Gurd Cloud

Run Guard Cloud and the Console on your own infrastructure. Settings, your own PostgreSQL, air-gapped installs, keys and upgrades are in the [Self-hosting reference](self-hosting-reference.md).

Try it

docker run -d --name guard -p 8443:8443 \
  -v guard-data:/var/lib/runeward-guard \
  ghcr.io/runeeward/runeward-guard:<release>
docker logs -f guard

The log prints the Console address and the first administrator key, once.

Warning: This is an evaluation install: one node, no redundancy and no backups. Don't enroll production endpoints into it.

Production with Docker Compose

Installs with bundled PostgreSQL, images pinned by digest, encrypted backups and upgrades with automatic rollback.

deploy/scripts/install.sh
sudo /opt/runeward-guard/scripts/generate-secrets.sh
sudo install -m 0600 images.env /etc/runeward-guard/images.env
sudo /opt/runeward-guard/scripts/deploy.sh

Using your own database? Follow Your own PostgreSQL instead.

Kubernetes

PostgreSQL is external. Create the database and guard-secrets first: see Kubernetes.

helm install guard helm-charts/guard --namespace guard \
  --set host=guard.example.com \
  --set secrets.existingSecret=guard-secrets \
  --set ingress.tlsSecretName=guard-tls \
  --set image.cloud.digest=sha256:... --set image.edge.digest=sha256:...

First organization

On Compose and Kubernetes, run this in the Guard Cloud container. It prints the first administrator key once:

guard-cloud bootstrap --organization "Your organization"

Sign in to the Console, then create an enrollment token and enroll your devices. Devices need a publicly trusted certificate, or one from a CA they trust.

Written from docs/guard-cloud.md, docs/self-hosting.md at commit fb79778d02f0. Rune Guard is in early access.