Minikube
https://minikube.sigs.k8s.io/docs/
CLI commands: https://minikube.sigs.k8s.io/docs/commands/
Tutorial: https://kubernetes.io/docs/tutorials/hello-minikube/
The configuration is located at ~/.kube/config
.
Install
Install it with Brew: brew install minikube
. This installs kubernetes-cli
(kubectl) as a dependency.
Also see the FAQs:
Do I need to install kubectl locally?
No, minikube comes with a built-in kubectl installation. See minikube’s kubectl documentation.
But you need to do minikube kubectl -- <kubectl commands>
to use it.
Push images
Pushing images - https://minikube.sigs.k8s.io/docs/handbook/pushing/
Push images from Docker to minikube’s registry - https://minikube.sigs.k8s.io/docs/handbook/registry/#docker-on-macos
docker-env
Docs: https://minikube.sigs.k8s.io/docs/commands/docker-env/
Point your terminal's Docker CLI to the Docker instance inside minikube (source):
eval $(minikube -p minikube docker-env)
Note that you need to run minikube start
before.
To unset run:
eval $(minikube docker-env --unset)
Usage
Start a local Kubernetes cluster:
minikube start
minikube start --nodes 3
To change the number of nodes for an existing cluster use minikube node add
. Or delete the cluster (minikube delete
) and create it again (minikube start --nodes 3
).
minikube dashboard
minikube stop
Delete your local cluster:
minikube delete
Delete all local clusters and profiles:
minikube delete --all
To run commands like docker ps
, SSH into minikube:
minikube ssh
docker build -t my-app:1 --file Dockerfile-prod .
docker ps
exit
When you have a service of type LoadBalancer
or NodePort
, make the app available with:
minikube service my-service
This opens a browser. Alternatively, use kubectl to forward the port:
kubectl port-forward service/my-service 7080:8080
The app is available at http://localhost:7080/. See Accessing apps.
List the services:
minikube service list
Addons
https://kubernetes.io/docs/concepts/cluster-administration/addons/
minikube addons list
minikube addons enable metrics-server
Automatically pause Kubernetes after a certain amount of inactivity:
minikube addons enable auto-pause