Prerequisites
BubuStack runs on Kubernetes and depends on a small set of external components. This page lists everything you need before following the Quickstart.
Kubernetes cluster
BubuStack targets Kubernetes 1.30+. Any conformant cluster works:
| Option | Notes |
|---|---|
| kind | Recommended for local development. Used in the quickstart. |
| k3s | Lightweight, good for edge and CI. |
| minikube | Alternative local cluster. |
| EKS / GKE / AKS | Managed Kubernetes. Any conformant provider works. |
| kubeadm | Bare-metal or VM-based clusters. |
CLI tools
You need these tools installed locally:
| Tool | Version | Purpose |
|---|---|---|
| kubectl | 1.30+ | Kubernetes CLI |
| Helm | 3.x | Package manager for Kubernetes |
| kind | 0.20+ | Local cluster (if not using a remote cluster) |
| Docker | 20+ | Container runtime (required by kind) |
System dependencies
These are installed as part of the Quickstart, but listed here for reference:
cert-manager
BubuStack uses admission webhooks for CRD validation and mutation. Webhooks require TLS certificates. cert-manager automates certificate provisioning and rotation.
Version: v1.19+ recommended.
S3-compatible object storage
BubuStack offloads large payloads, outputs, and logs to object storage using the S3 API. Any S3-compatible backend works.
Compatible backends:
| Backend | Notes |
|---|---|
| SeaweedFS | Lightweight, good for local/dev. Used in the quickstart. |
| Garage | Distributed, self-hosted, geo-aware. |
| RustFS | High-performance Rust-based S3 server. |
| CubeFS | Cloud-native distributed storage. |
| MinIO | Popular S3-compatible server. |
| AWS S3 | Native S3. |
Storage configuration
The operator needs these settings (configured via the operator ConfigMap or Helm values):
| Key | Description |
|---|---|
controller.storage.s3.bucket | Bucket name (no default — must be configured) |
controller.storage.s3.region | S3 region (no default — must be configured) |
controller.storage.s3.endpoint | S3 endpoint URL |
controller.storage.s3.use-path-style | Use path-style addressing (required for most non-AWS backends) |
controller.storage.s3.auth-secret-name | K8s Secret with AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY |
See Operator Configuration for the full configuration reference.
Related docs
- Quickstart — Step-by-step installation guide.
- Operator Configuration — Operator configuration keys and defaults.
- Architecture — System architecture and module map.
- Roadmap — What's planned and where to contribute.