===== Windows Minikube =====
== Install docker on windows ==
https://minikube.sigs.k8s.io/docs/drivers/docker/
== Install Minikube on Windows ==
https://minikube.sigs.k8s.io/docs/start/?arch=%2Fwindows%2Fx86-64%2Fstable%2F.exe+download
== After restart - make sure its running ==
Make sure docker desktop is running after restart
{{https://s3.eu-central-1.amazonaws.com/alf-digital-wiki-pics/sharex/XlUG6VDonN.png}}
== Use minikube ==
minikube start
{{https://s3.eu-central-1.amazonaws.com/alf-digital-wiki-pics/sharex/aAf1dtbFrE.png}}
kubectl get po -A
== Prefix "minikube kubectl" ==
To avoid "Unauthorized exception" when using "kubectl"
it is important to use
minikube kubectl --
minikube kubectl -- version
minikube kubectl -- create deployment demo-consume-api --image=ghcr.io/alfrepo/demo-consume-api:latest
== "alias" for kubectl ==
Use the alias on Linux
alias kubectl="minikube kubectl --"
Use the functions on Windows powershell
function kubectl {
param(
[Parameter(Mandatory = $false)]
[string] $arguments
)
minikube kubectl -- $arguments
}
minikube kubectl -- get po -A
== Dashboard ==
minikube dashboard
{{https://s3.eu-central-1.amazonaws.com/alf-digital-wiki-pics/sharex/FO4s2Vm4LF.png}}
{{https://s3.eu-central-1.amazonaws.com/alf-digital-wiki-pics/sharex/G7y7VKDHkd.png}}
== On Minikube - open a port to listen on your Windows machine ==
Assume you earlier created some **deployment**
minikube kubectl -- create deployment demo-consume-api --image=ghcr.io/alfrepo/demo-consume-api:latest
This application is running on port ''8080'', exposing API on ''/public/hello''
Then to expose the deployment
minikube service list
|----------------------|---------------------------|--------------|-----|
| NAMESPACE | NAME | TARGET PORT | URL |
|----------------------|---------------------------|--------------|-----|
| default | demo-consume-api | 8080 | |
| default | kubernetes | No node port | |
| kube-system | kube-dns | No node port | |
| kubernetes-dashboard | dashboard-metrics-scraper | No node port | |
| kubernetes-dashboard | kubernetes-dashboard | No node port | |
|----------------------|---------------------------|--------------|-----|
# pick the service deployment
# its on port 8080
# now make a port exposed
minikube service --url demo-consume-api
http://127.0.0.1:52260
❗ Because you are using a Docker driver on windows, the terminal needs to be open to run it.
# other terminal you now can
curl http://127.0.0.1:52260/public/hello