ctlptl
github.com
What it is
ctlptl is a free command-line tool for declaratively configuring local Kubernetes clusters with YAML. Its main commands show running clusters, create them, apply configuration, and delete clusters along with their state. The project lists Docker Desktop, KIND, Minikube, and K3D, with registry support for KIND, Minikube, and K3D. Configuration can allocate CPUs and set up local registries; Minikube supports per-cluster Kubernetes version selection. ctlptl can also create a cluster on a remote Docker host, a capability the project describes for CI environments. Installation options include Homebrew for macOS and Linux, Scoop for Windows, Go install, Docker, and prebuilt release binaries. A Docker image containing recent kind and ctlptl versions is offered for CI. The project supports macOS, Linux, and Windows and is licensed under Apache License 2.0. Its README calls it a work in progress and says it is not meant for remote clusters or remote development sandboxes. Usage statistics are anonymized, with an opt-out command available.
Spec sheet
- What it does
- ctlptl is a command-line tool for declaratively setting up local Kubernetes clusters using YAML.Read 2 Oct 2026 · github.com
- Intended users
- The project aims to help infrastructure engineers manage a consistent development environment and support common local cluster setup operations.Read 2 Oct 2026 · github.com
- Security
- GitHub's security page says the repository has no SECURITY.md policy and no published security advisories.Read 2 Oct 2026 · github.com
- License
- The repository states that ctlptl is licensed under Apache License 2.0.Read 2 Oct 2026 · github.com
- CI installation
- The installation appendix offers a Docker image containing recent versions of kind and ctlptl for CI environments.Read 2 Oct 2026 · github.com
- Cluster commands
- Its main commands get running clusters, create clusters, apply cluster configuration, and delete clusters and their state.Read 2 Oct 2026 · github.com
- Development status
- The README calls ctlptl a work in progress and welcomes contributions from the Kubernetes community.Read 2 Oct 2026 · github.com
- Installation platforms
- The project documents installation through Homebrew for Mac and Linux, Scoop for Windows, Go install, Docker, and prebuilt release binaries.Read 2 Oct 2026 · github.com
- Remote Docker
- It can create a cluster on a remote Docker host, which the README describes as useful in CI environments such as CircleCI.Read 2 Oct 2026 · github.com
- Resource configuration
- ctlptl can allocate CPUs and configure local registries alongside clusters.Read 2 Oct 2026 · github.com
- Scope limitation
- The README says ctlptl is not intended to set up remote clusters or remote development sandboxes.Read 2 Oct 2026 · github.com
- Supported cluster tools
- The README lists Docker Desktop, KIND, Minikube, and K3D, including registry support for KIND, Minikube, and K3D.Read 2 Oct 2026 · github.com
- Usage analytics
- ctlptl sends anonymized usage statistics, and users can opt out with `ctlptl analytics opt out`.Read 2 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Configures local clusters declaratively with YAML
- Supports Docker Desktop, KIND, Minikube, and K3D
- Offers installation options for macOS, Linux, and Windows
- Anonymized usage analytics can be disabled
Limits
- Project is described as a work in progress
- Not intended for remote clusters
- Not intended for remote development sandboxes
- No graphical interface
Who it suits
ctlptl suits infrastructure engineers who want consistent local Kubernetes setup across common cluster tools. It may also suit CI environments that use a remote Docker host, but it is not intended for remote clusters or development sandboxes.
Verdict
ctlptl covers common local cluster setup operations and offers several installation routes. Its stated scope excludes remote clusters and development sandboxes, and the project describes itself as a work in progress.
Where Specifiction places it
- Local Kubernetes Tools#9 of 238.0