iwilltry42
b7b8f6a5a6
|
4 years ago | |
---|---|---|
.github/ISSUE_TEMPLATE | 5 years ago | |
cmd | 4 years ago | |
docs | 4 years ago | |
pkg | 4 years ago | |
proxy | 4 years ago | |
tests | 4 years ago | |
vendor | 4 years ago | |
version | 5 years ago | |
.gitignore | 4 years ago | |
.travis.yml | 4 years ago | |
Dockerfile | 5 years ago | |
LICENSE | 5 years ago | |
Makefile | 4 years ago | |
README.md | 4 years ago | |
go.mod | 4 years ago | |
go.sum | 4 years ago | |
install.sh | 6 years ago | |
main.go | 5 years ago | |
mkdocs.yml | 4 years ago | |
thoughts.md | 4 years ago |
README.md
k3d
k3s in docker
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.
Requirements
Releases
Note: In May 2020 we upgraded from v1.7.x to v3.0.0 after a complete rewrite of k3d!
Get
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...
Build
- 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
Usage
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
Connect
- Join the Rancher community on slack via slack.rancher.io
- Go to rancher-users.slack.com and join our channel #k3d
- Start chatting
History
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.