Releases: k3d-io/k3d
Releases · k3d-io/k3d
v3.2.1
v3.2.1
Bugfixes
- fix: new Docker VM IP lookup breaking cluster creation on Docker for Desktop installations not using docker-machine
v3.2.0
v3.2.0
Features
- add docker's
--gpus
flag to enable GPU usage (#395)- plus proper docs on how to make use of it (#392, @markrexwinkel)
- ported: use either
docker-machine ip
orhost.docker.internal
to get the docker VM IP (#399)- used to expose the Kubernetes API on win/mac, if no IP was set explicitly
Bugfixes
- fix: nilpointer exception when exec process in node failed
- fix: do not return 0 (success) when a part of the image import process failed
Infra/Docs/Misc
- CI/CD: add Travis Pipeline to release to AUR (Arch Linux User Repository, #391, @JohnnyCrazy)
- allow setting custom helper image version at build time
- docs: use latest API version for Ingress (#395, @dhoppe)
- docs: add hint on asdf install option in readme (#389, @poikilotherm)
- asdf plugin maintained by @spencergilbert
v3.1.5
v3.1.5
Features
- feat: bring back the
--label
/-l
flag to add docker container labels to k3d node containers (@lionelnicolas, #378)
Bugfixes
- fix:
k3d cluster delete
errored out (non-zero exit code), when no cluster with given name exists- now emits an info log and exits with
0
- now emits an info log and exits with
Misc
- CI/CD: build and push two more docker images (
latest
and$GIT_TAG
, linux-amd64 only):rancher/k3d:latest
: only contains the k3d binary (FROM: scratch
)rancher/k3d:latest-dind
: k3d binary and some tools (incl. kubectl) in adind
container
v3.1.4
v3.1.4
Fixes & Enhancements
- fix: injection of
host.k3d.internal
not working with k3s v1.19+- missing
xargs
executable from PATH
- missing
- fix: injection of
host.k3d.internal
failing on MacOS and Windows- logreader was emptied before scanning it
Misc
- Enhanced end-to-end tests: test full lifecycle for multiple k3s versions with E2E_EXTRA=1
- Update cobra cli dependency to v1.1.0 (GA of custom ZSH completions)
k3s versions tested
This k3d version passed end-to-end tests for the following k3s image versions:
- rancher/k3s:v1.17.12-k3s1
- rancher/k3s:v1.18.9-k3s1
- rancher/k3s:v1.19.2-k3s
v3.1.3
v3.1.3
Bugfixes/Enhancements
- fix:
k3d cluster create --network somenet
selected network by prefix instead of exact match - fix: cannot create k3s v1.19+ clusters with multiple server nodes
- Problem: k3s v1.19 ships with embedded etcd (instead of dqlite), which only allows one learner node at a time
- Solution: wait for preceding server node to emit "k3s is up and running" before joining the next one (which would fail)
- Consequence: creating multi-server clusters becomes a little slower
- "Benchmark" (Ubuntu 20.04, Docker 19.03, i7-9750H, 32GiB RAM) for 4 server nodes
embedded DB k3s version time to cluster with parallel server creation time to cluster with serial server creation difference dqlite v1.18.9-k3s1 30.508s 37.034s 6.526s etcd v1.19.2-k3s1 didn't work 52.169s -
- "Benchmark" (Ubuntu 20.04, Docker 19.03, i7-9750H, 32GiB RAM) for 4 server nodes
Docs
k3s versions tested
This k3d version passed end-to-end tests for the following k3s image versions:
- rancher/k3s:v1.17.12-k3s1
- rancher/k3s:v1.18.9-k3s1
- rancher/k3s:v1.19.2-k3s1 (see
Known Issues
below)
Known Issues
- Injection of the
host.k3d.internal
into the CoreDNS ConfigMap does not work onrancher/k3s:v1.19.2-k3s1
, because the image is missing the usedxargs
command (to be fixed).
v3.1.2
Bugfixes
- fix nil pointer exception caused by incomplete edge case handling when trying to get the host IP for
host.k3d.internal
injection (fixes #371)
Note: based on the same commit as v3.1.2-beta.0, which was confirmed to be working now.
v3.1.2-beta.0
Bugfixes
- fix nil pointer exception caused by incomplete edge case handling when trying to get the host IP for
host.k3d.internal
injection (#371)
v3.1.1
v3.1.1
Enhancements/Features
- new root flag
--trace
to enable trace logging- even more verbose than
--debug
debug
logging is now a little less verbose to get a better overview
- even more verbose than
Bugfixes
- fix: the injection of the host IP entry (
host.k3d.internal
) is now less breaking- we still try to read the exec logs, even if it returned a non-zero exit code (edge case)
- if we cannot read the hostIP, we only log a warning and continue building the cluster
v3.1.0
v3.1.0
Enhancements/Features
- inject special hosts and DNS entry
host.k3d.internal
(#360)- by default, we're now injecting an entry of the form
1.2.3.4 host.k3d.internal
into/etc/hosts
of the k3d containers (k3s nodes)- section
NodeHosts
in thecoredns
ConfigMap in thekube-system
namespace
- this can be disabled using
k3d cluster create --no-hostip
- the IP shown as
1.2.3.4
will be the routable IP of your docker host machine (similar tohost.docker.internal
in Docker for Desktop) and enables you to access services running on your host machine from inside the pods running in your k3d/k3s cluster
- by default, we're now injecting an entry of the form
Docs
- add information on
host.k3d.internal
and on some flags that were missing from the docs
Misc
- e2e-tests:
- test image import feature
- test host.k3d.internal DNS entry
v3.1.0-dev.0 - Test host-IP injection
Pre-Release to exclusively test #360