A Kubernetes controller built with Kubebuilder that manages a custom resource called Kluster. When a Kluster is created, the controller automatically provisions:
- A Deployment running a Book API application
- A NodePort Service to expose the API
- OwnerReferences so the Deployment and Service are deleted with the Kluster
-
Go 1.22+
-
Docker
-
Kubernetes cluster (e.g., Minikube or kind)
-
kubectlconfigured -
make
make installkubectl apply -f config/samples/core_v1alpha1_kluster.yaml
make run