There are lots of Kubernetes dev solutions out there. The choices can be overwhelming. We’re here to help you figure out the right one for you.
- Beginner Level:
- Kind
- Docker for Desktop
- Microk8s
- Intermediate Level:
- Minikube
- k3d
- Rancher Desktop
- Advanced Level:
- Amazon Elastic Kubernetes Service
- Azure Kubernetes Service
- Google Kubernetes Engine
- Custom Clusters
Command line tools
git
A distributed version-control system for tracking changes in source code during software development:
$ git version
git version 2.21.0
docker
A client to run the Linux containers:
$ docker --version
Docker version 19.03.5, build 633a0ea
kubectl
Knative minimum requires Kubernetes v1.15+; however, we recommend using v1.15.0. To check your kubectl version run:
$ kubectl version --short
Client Version: v1.15.0
Server Version: v1.15.0
helm
Helps you define, install, and upgrade even the most complex Kubernetes appli‐ cations:
$ helm version
version.BuildInfo{Version:"v3.0.2"...}
stern
Allows you to tail multiple pods on Kubernetes and multiple containers within the pod:
$ stern --version
stern version 1.11.0
yq
A lightweight and portable command-line YAML processor:
$ yq --version
yq version 2.4.1
httpie
A command-line HTTP client that will make you smile:
$ http --version
1.0.3
hey
A tiny program that sends some load to a web application. hey does not have a version option, so you can use hey --help to verify that it is in your $PATH.
watch
Execute a program periodically, showing output in full screen:
$ watch --version
watch from procps-ng 3.3.15
kubectx
Allows you to switch faster between clusters and namespaces. kubectx does not have a version option, so you can use kubectx --help to verify that it is in your $PATH. kubens is installed with kubectx, so you can use kubens --help to verify that it is in your $PATH.