Local Kubernetes Setup
The Helm Lab needs a Kubernetes cluster running on your
machine. The easiest path is Docker Desktop's built-in Kubernetes: one
checkbox in settings and you have a cluster. If that's not an option (Windows without
Docker Desktop Kubernetes, or you just want more control over your setup),
kind (Kubernetes IN Docker) works great too.
Both kubectl and helm are covered in Workstation Setup.
Make sure those are installed before continuing.
Docker Desktop Kubernetes (Recommended)
Docker Desktop ships with a single-node Kubernetes cluster that you can enable with a checkbox. No extra installation, no extra processes to manage.
-
Open Docker Desktop and click the gear icon to open Settings.
-
Go to the Kubernetes tab.
-
Check the Enable Kubernetes box.
-
Click Apply & restart.
-
Wait for the status indicator at the bottom of the Docker Desktop window to show Kubernetes is running. First-time enable takes 1-3 minutes while Docker pulls the control plane images.
If the box is already checked and the status indicator is green, you can skip ahead to the verification step.
Verify the cluster is up:
kubectl get nodes
You should see one node named docker-desktop with status Ready:
$ kubectl get nodes NAME STATUS ROLES AGE VERSION docker-desktop Ready control-plane 2m v1.32.2
If the node is not yet Ready, give it another minute and try again. The control plane
needs a moment to finish starting after Docker Desktop restarts.
Enabling Kubernetes increases Docker Desktop's memory and CPU usage. If your machine feels sluggish, bump Docker Desktop's resource limits under Settings > Resources, or disable Kubernetes when you are not actively using it.
kind (Alternative)
kind runs a Kubernetes cluster inside Docker containers. It is a good fit for Windows users without Docker Desktop Kubernetes, or anyone who wants multiple isolated clusters.
-
Install kind. The Workstation Setup page covers the install for macOS, Windows, and direct download.
-
Create a cluster:
kind create cluster --name ignition-labFirst-time cluster creation takes a minute or two while kind pulls its node image.
-
Verify the cluster is running:
kubectl get nodesYou should see one node named
ignition-lab-control-planewith statusReady:bash — ~$ kubectl get nodes NAME STATUS ROLES AGE VERSION ignition-lab-control-plane Ready control-plane 45s v1.32.2
kind clusters do not survive a Docker daemon restart cleanly. If you reboot or quit
Docker Desktop, recreate the cluster with the same kind create cluster command. Any
resources you had installed in the cluster will need to be reapplied.
Tear down a kind cluster when you are done:
kind delete cluster --name ignition-lab
Add the Ignition Helm Chart Repo
With a cluster running, register the Ignition chart repository so Helm can find and install charts in the lab.
helm repo add ignition https://charts.ia.io
helm repo update
Verify the repo is registered and the chart index loaded:
helm search repo ignition
$ helm search repo ignition NAME CHART VERSION APP VERSION DESCRIPTION ignition/ignition 0.2.3 8.3.6 Ignition by Inductive Automation
The official chart documentation at charts.ia.io is the source of truth for chart values and usage. ignition-guides provides labs and curated guidance, not a duplicate of that reference. When in doubt about a specific value, check the chart docs directly.
Switching Between Clusters
If you have more than one cluster configured (for example, Docker Desktop Kubernetes and
a kind cluster, or a remote cluster from work), kubectl uses contexts to track
which one it talks to.
List the contexts available on your machine:
kubectl config get-contexts
Switch to Docker Desktop:
kubectl config use-context docker-desktop
Switch to a kind cluster:
kubectl config use-context kind-ignition-lab
Most users only need one context. If you only have Docker Desktop Kubernetes enabled, or only a single kind cluster, you can skip this section entirely.
Next Steps
- Kubernetes Concepts: a high-level tour of the Kubernetes objects you will see in the lab (StatefulSets, PVCs, Services, and more).
- charts.ia.io: the authoritative reference for every value the official Ignition Helm chart supports.
- Helm Lab: install Ignition into your cluster using the official Helm chart.