Introduction
To install Minikube there are 3 things to do:
- Install a hypervisor, e.g. VirtualBox, KVM
- "Install" (download and add in path) kubectl
- "Install" (download and add in path) Minikube
Install kubectl
Reference: https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl-on-linux
$ curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl
$ chmod +x ./kubectl
$ sudo mv ./kubectl /usr/local/bin/kubectl
$ kubectl version
Install MiniKube
$ wget https://github.com/kubernetes/minikube/releases/download/v1.6.0-beta.1/minikube-1.6.0.beta.1.rpm .
$ sudo rpm -pi minikube-1.6.0.beta.1.rpm
$ sudo rpm -ql minikube
/usr/bin/minikube
$ sudo rpm -q --scripts minikube
Test
https://kubernetes.io/docs/setup/learning-environment/minikube/
Start Minikube and create a cluster. Here I specify VirtualBox as hypervisor, since I have also KVM installed.
$ minikube start --vm-driver=virtualbox
Deploy image 'k8s.gcr.io/echoserver' version 1.10 and name deployment 'hello-minikube'.
$ kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.10
Expose deployment on NodePort and port 8080, i.e. create routing.
$ kubectl expose deployment hello-minikube --type=NodePort --port=8080
Check deployment has finished.
$ kubectl get pod
Retrieve internal IP and port and access web app.
$ minikube service hello-minikube --url
http://192.168.99.100:30024
$ curl http://192.168.99.100:30024
Hostname: hello-minikube-797f975945-fmswk
Pod Information:
-no pod information available-
Server values:
server_version=nginx: 1.13.3 - lua: 10008
Request Information:
client_address=172.17.0.1
method=GET
real path=/
query=
request_version=1.1
request_scheme=http
request_uri=http://192.168.99.100:8080/
Request Headers:
accept=*/*
host=192.168.99.100:30024
user-agent=curl/7.65.3
Request Body:
-no body in request-