Skip to content



This page is targeting k3d v3.0.0 and newer!

k3d is a lightweight wrapper to run k3s (Rancher Lab’s minimal Kubernetes distribution) in docker.

k3d makes it very easy to create single- and multi-node k3s clusters in docker, e.g. for local development on Kubernetes.

View a quick demo




Platform Stage Version Release Date
GitHub Releases stable GitHub release (latest by date) GitHub Release Date
GitHub Releases latest GitHub release (latest by date including pre-releases) GitHub (Pre-)Release Date
Homebrew - homebrew -


You have several options there:

  • use the install script to grab the latest release:
    • wget: wget -q -O - | bash
    • curl: curl -s | bash
  • use the install script to grab a specific release (via TAG environment variable):

    • wget: wget -q -O - | TAG=v3.0.0 bash
    • curl: curl -s | TAG=v3.0.0 bash
  • use Homebrew: brew install k3d (Homebrew is available for MacOS and Linux)

  • install via AUR package rancher-k3d-bin: yay -S rancher-k3d-bin
  • grab a release from the release tab and install it yourself.
  • install via go: go install (Note: this will give you unreleased/bleeding-edge changes)
  • use arkade: arkade get k3d

Quick Start

Create a cluster named mycluster with just a single server node:

k3d cluster create mycluster

Get the new cluster’s connection details merged into your default kubeconfig (usually specified using the KUBECONFIG environment variable or the default path $HOME/.kube/config) and directly switch to the new context:

k3d kubeconfig merge mycluster --switch-context

Use the new cluster with kubectl, e.g.:

kubectl get nodes
  • k3x: a graphics interface (for Linux) to k3d.

Last update: July 21, 2020