Please Note: master
is now v3.0.0 and the code for v1.x can be found in the master-v1
branch!
k3s is the lightweight Kubernetes distribution by Rancher: rancher/k3s
k3d creates containerized k3s clusters. This means, that you can spin up a multi-node k3s cluster on a single machine using docker.
- Website with documentation: k3d.io
- Rancher Meetup - May 2020 - Simplifying Your Cloud-Native Development Workflow With K3s, K3c and K3d (YouTube)
- k3d demo repository: iwilltry42/k3d-demo
Note: In May 2020 we upgraded from v1.7.x to v3.0.0 after a complete rewrite of k3d!
Platform | Stage | Version | Release Date | |
---|---|---|---|---|
GitHub Releases | stable | |||
GitHub Releases | latest | |||
Homebrew | - | - |
You have several options there:
-
use the install script to grab the latest release:
- wget:
wget -q -O - https://raw.githubusercontent.com/rancher/k3d/master/install.sh | bash
- curl:
curl -s https://raw.githubusercontent.com/rancher/k3d/master/install.sh | bash
- wget:
-
use the install script to grab a specific release (via
TAG
environment variable):- wget:
wget -q -O - https://raw.githubusercontent.com/rancher/k3d/master/install.sh | TAG=v3.0.0-beta.0 bash
- curl:
curl -s https://raw.githubusercontent.com/rancher/k3d/master/install.sh | TAG=v3.0.0-beta.0 bash
- wget:
-
use Homebrew:
brew install k3d
(Homebrew is available for MacOS and Linux)- Formula can be found in homebrew/homebrew-core and is mirrored to homebrew/linuxbrew-core
-
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 github.com/rancher/k3d
(Note: this will give you unreleased/bleeding-edge changes)
or...
- Clone this repo, e.g. via
go get -u github.com/rancher/k3d
- Inside the repo run
- 'make install-tools' to make sure required go packages are installed
- Inside the repo run one of the following commands
make build
to build for your current systemgo install
to install it to yourGOPATH
(Note: this will give you unreleased/bleeding-edge changes)make build-cross
to build for all systems
Check out what you can do via k3d help
or check the docs @ k3d.io
Example Workflow: Create a new cluster and use it with kubectl
k3d create cluster CLUSTER_NAME
to create a new single-node cluster (= 1 container running k3s)k3d get kubeconfig CLUSTER_NAME --switch
to update your default kubeconfig and switch the current-context to the new one- execute some commands like
kubectl get pods --all-namespaces
k3d delete cluster CLUSTER_NAME
to delete the default cluster
- Join the Rancher community on slack via slack.rancher.io
- Go to rancher-users.slack.com and join our channel #k3d
- Start chatting
This repository is based on @zeerorg's zeerorg/k3s-in-docker, reimplemented in Go by @iwilltry42 in iwilltry42/k3d, which got adopted by Rancher inrancher/k3d.