Skip to content

Installing KuboCD on an existing cluster.

If you have an existing cluster, you can use it to test KuboCD

Tip

If you don't have one, you can use a Kind cluster on your local workstation


Prerequisites

Ensure the following tools are installed on your workstation:

Make sure:

  • Docker is running
  • You have an active internet connection
  • You have full admin rights on the target cluster.

You also need an access to an OCI-compatible container registry with permissions to push images. This is will be necessary for uploading and storing KuboCD Packages as OCI artifacts.


Install Flux

Install the Flux CLI

If not already installed, follow the Flux CLI installation guide..

Deploy Flux (Basic Mode)

If Flux is not already installed on your cluster, we’ll begin with a basic installation (no Git repository linked for now):

flux install
 generating manifests
 manifests build completed
 installing components in flux-system namespace
...
 notification-controller: deployment ready
 source-controller: deployment ready
 install finished

Verify deployment:

kubectl -n flux-system get pods
NAME                                       READY   STATUS    RESTARTS   AGE
helm-controller-b6767d66-q27gd             1/1     Running   0          14m
kustomize-controller-5b56686fbc-hpkhl      1/1     Running   0          14m
notification-controller-58ffd586f7-bbvwv   1/1     Running   0          14m
source-controller-6ff87cb475-hnmxv         1/1     Running   0          14m

Tip

💡 Want a minimal install?
You can limit Flux to the required components for KuboCD:
flux install --components source-controller,helm-controller


Install KuboCD

Deploy the KuboCD controller using Helm:

helm -n kubocd install kubocd-ctrl --create-namespace oci://quay.io/kubocd/charts/kubocd-ctrl --version v0.2.2

Enabling Webhook-Based Features

Some advanced features in KuboCD such as Release protection rely on a Kubernetes validating webhook.

To enable these features, you need to deploy a webhook component alongside the controller. This webhook requires cert-manager. to be installed in your cluster to handle TLS certificate provisioning.

If you already have cert-manager installed, you can deploy the webhook with the following command:

helm -n kubocd install kubocd-wh oci://quay.io/kubocd/charts/kubocd-wh --version v0.2.2

Note

Don’t have cert-manager yet? No problem !
We’ll show you how to package and install it with KuboCD in a later section.


Install the KuboCD CLI

Download the KuboCD CLI from the GitHub releases page and rename it to kubocd. Then make it executable and move it to your path:

mv kubocd_*_* kubocd
chmod +x kubocd
sudo mv kubocd /usr/local/bin/

Verify the installation:

kubocd version

You can now move to your first deployment with KuboCD