Our Documentation for more in-depth installation etc.Please see
kind is a tool for running local Kubernetes clusters using Docker container "nodes". kind was primarily designed for testing Kubernetes itself, but may be used for local development or CI.
If you have go 1.16+ and docker or podman installed
go install firstname.lastname@example.org && kind create cluster is all you need!
kind consists of:
- Go packages implementing cluster creation, image build, etc.
- A command line interface (
kind) built on these packages.
- Docker image(s) written to run systemd, Kubernetes, etc.
kubetestintegration also built on these packages (WIP)
kind bootstraps each "node" with kubeadm. For more details see the design documentation.
NOTE: kind is still a work in progress, see the 1.0 roadmap.
Installation and usage
For a complete install guide see the documentation here.
You can install kind with
go install email@example.com.
NOTE: please use the latest go to do this. KIND is developed with the latest stable go, see
.go-version for the exact version we're using.
This will put
$(go env GOPATH)/bin. If you encounter the error
kind: command not found after installation then you may need to either add that directory to your
shown here or do a manual installation by cloning the repo and run
make build from the repository.
Without installing go, kind can be built reproducibly with docker using
Stable binaries are also available on the releases page. Stable releases are
generally recommended for CI usage in particular.
To install, download the binary for your platform from "Assets" and place this
# For AMD64 / x86_64 [ $(uname -m) = x86_64 ] && curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.19.0/kind-$(uname)-amd64 # For ARM64 [ $(uname -m) = aarch64 ] && curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.19.0/kind-$(uname)-arm64 chmod +x ./kind sudo mv ./kind /usr/local/bin/kind
On macOS via Homebrew:
brew install kind
On macOS via MacPorts:
sudo port selfupdate && sudo port install kind
On macOS via Bash:
# For Intel Macs [ $(uname -m) = x86_64 ] && curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.19.0/kind-darwin-amd64 # For M1 / ARM Macs [ $(uname -m) = arm64 ] && curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.19.0/kind-darwin-arm64 chmod +x ./kind mv ./kind /some-dir-in-your-PATH/kind
curl.exe -Lo kind-windows-amd64.exe https://kind.sigs.k8s.io/dl/v0.19.0/kind-windows-amd64 Move-Item .\kind-windows-amd64.exe c:\some-dir-in-your-PATH\kind.exe # OR via Chocolatey (https://chocolatey.org/packages/kind) choco install kind
To use kind, you will need to install docker. Once you have docker running you can create a cluster with:
kind create cluster
To delete your cluster use:
kind delete cluster
To create a cluster from Kubernetes source:
- ensure that Kubernetes is cloned in
$(go env GOPATH)/src/k8s.io/kubernetes
- build a node image and create a cluster with:
kind build node-image kind create cluster --image kindest/node:latest
Multi-node clusters and other advanced features may be configured with a config
file, for more usage see the docs or run
kind [command] --help
Please reach out for bugs, feature requests, and other issues! The maintainers of this project are reachable via:
- Kubernetes Slack in the #kind channel
- filing an issue against this repo
- The Kubernetes SIG-Testing Mailing List
Current maintainers are @aojea and @BenTheElder - feel free to reach out if you have any questions!
Pull Requests are very welcome! If you're planning a new feature, please file an issue to discuss first.
Check the issue tracker for
help wanted issues if you're unsure where to
start, or feel free to reach out to discuss.
See also: our own contributor guide and the Kubernetes community page.
- kind supports multi-node (including HA) clusters
- kind supports building Kubernetes release builds from source
- support for make / bash or docker, in addition to pre-published builds
- kind supports Linux, macOS and Windows
- kind is a CNCF certified conformant Kubernetes installer
Code of conduct
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.