Releases: k3d-io/k3d
v1.5.0
Features
- New flag
k3d create --label key[=value][@node-specifier]
to assign docker labels to node containers (#163, @lionelnicolas) - New flags `k3d create --enable-registry [--registry-name NAME] [--registry-port PORT] to automatically create/attach a local insecure registry when creating a cluster (#161 + #169, @inercia)
- New flag
k3d get-kubeconfig --overwrite
to force an overwrite of the kubeconfig.yaml (fixes #154)
Development
Fixes
- return error if no image was specified for
import-image
- adapt to new tagging-scheme of k3s (and differences between GitHub releases and DockerHub tags)
- better default + help text for
--wait
flag (default is not0
=wait forever)
Docs
Thanks to all contributors!
Note: default k3s version in this release is rancher/k3s:v1.17.0-k3s.1
v3.0.0-alpha.0 -> First Preview of k3d v3.0.0
Preview k3d v3.0.0
In the beginning, k3d was a learning project and grew organically without a clear plan in mind.
This and the eagerness to implement all the requested features as fast as possible, resulted in quite a lot of spaghetti code which became a bit more difficult to maintain and extend.
k3d v3 aims to make a few things better:
- a better project structure with more clearly defined module/package boundaries
- cleaner/leaner code
- new CLI syntax to fit better into the Kubernetes ecosystem (syntax similar to e.g. kubectl)
- usable as a Go module from within other Go projects.
Additionally it offers some new or modified features compared to v1.x, even though not every single feature of v1.x found its way into v3 yet.
This is quite an early release, but I'd like to gather feedback rather earlier than later now.
So please test this release, play around with it, open issues and/or pull-requests and let me know, what you think of it via Slack :)
v1.4.0
New Features
- [experimental]
add-node
command (#102)- see https://github.com/rancher/k3d/releases/tag/v1.4.0-dev.0 for more details
version
command
Enhancements
- replace 127.0.0.1 in kubeconfig (#137, thanks @M3t0r)
- improved log messages
- wait for kubeconfig to be written when
--wait
is set
Documentation
- improved section related to connecting to private registries
- #135, thanks @fearoffish
- thanks @pojntfx
- #157 + #158 , thanks @chrisjohnson
v1.4.0-dev.0 - preview `add-node` command
About
This preview release includes lots of deprecations and code cleanups as well as an experimental new feature to add new nodes to existing clusters.
Preview
- preview the new
k3d add-node
command which lets you add new nodes to existing k3d or k3s clusters- this is still under development, so you cannot use all the options which are available to the
create
command yet
- this is still under development, so you cannot use all the options which are available to the
NAME:
k3d add-node - Add nodes to an existing k3d/k3s cluster (k3d by default)
USAGE:
k3d add-node [command options] [arguments...]
OPTIONS:
--role value, -r value Choose role of the node you want to add [agent|server] (default: "agent")
--name value, -n value Name of the k3d cluster that you want to add a node to [only for node name if --k3s is set] (default: "k3s-default")
--count value, -c value Number of nodes that you want to add (default: 1)
--image value, -i value Specify a k3s image (Format: <repo>/<image>:<tag>) (default: "docker.io/rancher/k3s:v0.10.2")
--arg value, -x value Pass arguments to the k3s server/agent command.
--env value, -e value Pass an additional environment variable (new flag per variable)
--volume source:destination, -v source:destination Mount one or more volumes into every created node (Docker notation: source:destination)
--k3s https://<host>:<port> Add a k3d node to a non-k3d k3s cluster (specify k3s server URL like this https://<host>:<port>) [requires k3s-secret or k3s-token]
--k3s-secret value, -s value Specify k3s cluster secret (or use --k3s-token to use a node token)
--k3s-token value, -t value Specify k3s node token (or use --k3s-secret to use a cluster secret)[overrides k3s-secret]
Feedback is very welcome :)
Just releasing this now so you can test it already, since it's going a bit slow at the moment due to high workloads among collaborators.
v1.3.4
CLI
- new global flag
--timestamp
to show timestamps in logs
Internal
get-kubeconfig
: only continue on error, if--all
is set (thanks to @ibuildthecloud, #128)- do not run k3s as PID 1; use init (thanks to @ibuildthecloud, #129)
- Exit Code 1 if no clusters were found in
get-kubeconfig
,ls
anddelete
Docs
- example for running k3d on unsupported filesystems (thanks to @zer0def, #124)
- clarify in example section, that k3s uses traefik by default
- add brew install instructions (thanks to @docwhat, #127)
Development / Build Process
- only build with go 1.13 in Travis
- update to golangci-lint v1.20
v1.3.3
v1.3.2
Changes in k3d
- New flag
k3d create --agent-arg <arg>
(thanks to @misakwa, #96 )- let's you pass additional flags through to the k3s agent
- Update build to latest Go version
- typo fix (thanks to @daxmc99 , #109)
- improved logging with proper log levels (thanks to @nlamirault , #112)
Changes in general toolchain
- allow passing
TAG
to the install script to install a specific releases (thanks to @splattael , #105 )
v1.3.1
v1.3.0 - import images from docker into k3d
Changes
- [BUGFIX/ENHANCEMENT] ignore docker-machine errors and add more verbose logs (@andyz-dev)
- [BUGFIX] fix timeout for
k3d create
(@darobs) - [FEATURE] new command
k3d import-images
to import images from the used docker daemon into containerd within k3d
Features explained
Use the import-images
command:
- Create a cluster with the latest version of k3s (must be at least
k3s:v0.7.0-rc2
, because ofctr
):k3d create -n test0 -w 2 --image rancher/k3s:v0.7.0-rc2
- Import two images:
k3d import-images -n test0 nginx:local redis:local
(comma instead of whitespace works as well for separating the list of images)
Thank you for all comments and contributions :)
Feedback is always welcome :)
v1.3.0-dev.0 - test import-images feature
This release is meant for testing the k3d import-images
feature introduced by PR #83 .
It only works with rancher/k3s
tag of v0.7.0-rc2
or later due to a hard requirement on ctr
inside the k3s containers.
Test it with the attached binaries e.g. like this:
k3d import-images -n test0 nginx:local redis:local
or
k3d import-images -n test0 nginx:local,redis:local
Note: you need to create a cluster with the k3s image that includes ctr
. E.g.
k3d create -a 6550 -n test0 -w 2 --image rancher/k3s:v0.7.0-rc2