- helm v3.10.0
- kubectl v1.25.2
- alpine v3.16
- terraform v1.3.0
- yq v4.27.5
- docker-compose-templer v1.1.0
- jinja v3.1.2
This lightweight alpine docker image provides kubectl and helm binaries for working with a Kubernetes cluster. A local configured kubectl is a prerequisite to use helm per helm documentation. This image is useful for general helm administration such as deploying helm charts and managing releases. It is also perfect for any automated deployment pipeline needing to use helm which supports docker images such as Concourse CI, Jenkins on Kubernetes, Travis CI, and Circle CI. Having bash installed allows for better support for troubleshooting by being able to exec / terminal in and run desired shell scripts. Git installed allows installation of helm plugins.
If it is desired to only use kubectl and have kubectl as the entry command (versus this image as bash entry command), I recommend checking out this image instead: lachlanevenson/kubectl
Example to just run helm on entry:
docker run --rm mshahmalaki/swiss-knife helm
By default kubectl will try to use /root/.kube/config file for connection to the kubernetes cluster, but does not exist by default in the image.
Example for use with personal administration or troubleshooting with volume mount for kubeconfig files:
docker run -it -v ~/.kube:/root/.kube mshahmalaki/swiss-knife
The -v maps your host docker machine Kubernetes configuration directory (~/.kube) to the container's Kubernetes configuration directory (root/.kube).
For doing a manual local build of the image:
make docker_build