Releases: k3d-io/k3d
Releases · k3d-io/k3d
v1.2.0
What changed?
- [FEATURE]: New Flags for
k3d create
:--publish
/--add-port [ip:][host-port:]container-port[/protocol][@node-specifier]
- only
container-port
is mandatory - the
node-specifier
is set toserver
by default- it can be either a descriptor from
server
/master
,workers
andall
or a full name of a node (e.g.k3d-k3s-default-worker-1
) - if you choose to map the same container-port from more than one container to the host, you can make use of the
--port-auto-offset X
flag which will automatically choose the host-port based on the provided offset
- it can be either a descriptor from
- only
- [CHANGE]:
--api-port
/-a
is now the default to set the K8s ApiPort mapping, since we want to re-use--port
/-p
for the functionality of--publish
/--add-port
--port
/-p
will have the new functionality as of v2.0.0
- [ENHANCEMENT] no empty list and more meaningful cluster status table
- [CHANGE]
--volume
/-v
is now a string-slice, so it has to be provided for each extra volume-mount - [BUGFIXES] no cluster name conflicts or accidental deletions of clusters
- [ENHANCEMENT] clean up docker volumes upon cluster deletion
- [ENHANCEMENT] Makefile fixed and now usable on more platforms (had problems on Mac)
- several more refactorings, bugfixes, enhancements
Thanks
- to @andyz-dev for becoming our new very active collaborator!
- to @andyz-dev and @zeerorg for several bugfixes and enhancements
- to @goffinf and @mash-graz for the very beneficial discussions on the port mapping issue
- to everyone who actively contributed to the project via PRs and opening new issues, filing bugreports, etc.
Thanks for the nice and helpful feedback!
There are many more fixes and enhancements and features coming, so stay tuned :)
v1.2.0-beta.2
Enhancements for release v1.2.0-beta.1.
- better error handling
- bugfixes
v1.2.0-beta.1
Beta-Release for PR #43
Changes:
--publish
/--add-port
syntax is now[ip:][host-port:]container-port[/protocol]@node-specifier
, where container-port and node-specifier are mandatory and node-specifier can be one or multiple- node-specifier can be either one of
all
,server
,worker
or the name of a node that will be created (easier naming will follow, since e.g.k3d-some-test-name-worker-0
is not convenient to use) - since the node-specifier is mandatory, we won't automatically map ports to multiple nodes
- node-specifier can be either one of
--api-port
/-a
is now the default to set the K8s ApiPort mapping, since we want to re-use--port
/-p
for the functionality of--publish
/--add-port
- You can toggle/set a automatic port offset for mapping the same container-port from multiple worker nodes to predictable host-ports using the new
--port-auto-offset X
flag with X > 0.- if a multi-node portmapping is specified (e.g.
--publish 1234:4321@workers
) without the auto offset flag set, the docker API will return an error due to colliding ports
- if a multi-node portmapping is specified (e.g.
v1.2.0-beta.0
New
- FEATURE: add arbitrary port mappings using the
--publish
/--add-port
flag.- using docker syntax:
--publish ip:hostPort:containerPort/protocol
, where onlycontainerPort
is mandatory
- using docker syntax:
v1.1.0
New in v1.1.0:
- ENHANCEMENT nodes now have docker name as hostname so that they're better identifiable via
kubectl
(Issue #25, Commit 9ac8198) - FEATURE: specify custom k3s image via
--image <repo>/<image>:<tag>
(shorthand-i
) (Issue #28, PR #30)docker.io
is the default registry,rancher/k3s
is the default image- Note: This will soon deprecate the
--version
flag
- FIX: enforce RFC 1123 compliant hostnames for cluster names and set default name accordingly (Issue #34, PR #35)
v1.0.2
New:
- ENHANCEMENT: only pull k3s image if it's not present on the machine yet (#27 thanks to @ibuildthecloud )
- ENHANCEMENT: reuse existing docker networks (#26 thanks to @ibuildthecloud )
- FIX:
go install
didn't use k3s version set by Makefile -> now useslatest
tag (#24 thanks to @cartyc )
v1.0.1
- FEATURE Makefile targets
install-tools
andextra-clean
(#20 by @andyz-dev) - FIX
get-kubeconfig
exception if no container is returned (#22 by @andyz-dev & #21 by @cloudnautique)
v1.0.0
About
With this release, we completely switched from using the installed docker executables (docker
and docker-compose
) to communicating with the Docker API (via the Go client SDK).
For reference, check out PR #12 .
The functionality is the same as before ✔️
New Features
- Spin up worker nodes using the
--workers X
flag - Global
--verbose
flag to get some more output
Enhancements
- Use the docker API instead of executables
- store state in docker API (labels) instead of relying on directory names
- create docker network for communication with worker nodes
- better log messages and prints
- lots more
Rewrite-Release Beta
This is a beta release of the new version which is not relying on the docker and docker-compose executables anymore but leverages the docker client SDK to call the docker API directly.
First release in Rancher space! Renaming and Features
What changed?
- Migration from
iwilltry42/k3d
torancher/k3d
- Re-ordered the arguments for the docker command in
CreateCluster
function - New Flags for
create
command:--env
,-e
for passing additional environment variables to docker--server-arg
,-x
for passing additional arguments to the k3s server command
- Shorthand notation for
delete
command:-del
Easy installation
- 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: