Every feature you need to run a fleet of game servers
From provisioning to backups, RBAC to observability — a closer look at how each piece works.
Kubernetes-native by design
Eight purpose-built Custom Resource Definitions — GameServer, GameTemplate, Cluster, Backup, BackupSchedule, Restore, Module, and ModuleSource — are reconciled by a single controller-runtime operator. Whether you create a server through the dashboard or with kubectl apply, the outcome is identical: the operator is the single source of truth.
Scales from homelab to production
The exact same CRDs, controllers, and Helm chart that run on a single-node k3s homelab also run on a multi-node production cluster. There's no separate 'production mode' to migrate to — StatefulSets, PVCs, and rolling upgrades from day one.
Live console & RCON
An in-pod agent sidecar streams the console over WebSocket and speaks each game's native protocol — Source RCON, telnet, Rust WebRcon, BattlEye, or a REST admin API — no SSH, no kubectl exec required.
In-browser file manager
Browse, edit, upload, and download files on a running server's data volume straight from the dashboard, with a full Monaco editor — the same engine behind VS Code — for config files, scripts, and datapacks.
Backups & one-click restore
Scheduled or on-demand snapshots are pushed to any S3-compatible storage backend using restic, giving you deduplicated, encrypted, incremental backups. Restoring is a single click from the dashboard's Backups tab.
Game module system
Game server templates are versioned, signed OCI bundles — the same distribution model as container images. Sixteen games ship out of the box, and the open template format supports any game with a config file and a start command.
RBAC + OIDC auth
Authenticate with local accounts or federate through OIDC — Keycloak, Google, or GitHub. Three built-in roles (admin, operator, viewer) scope access per namespace, so a shared cluster can host multiple teams safely.
Audit logging & observability
Every mutating API request is logged to the database and exportable as CSV or JSON, with optional mirroring to stdout, a webhook, or syslog. Fleet-wide Prometheus metrics and a bundled Grafana dashboard come from the same install.