https://kubernetes.io/docs/reference/kubectl/overview/
https://kubernetes.io/docs/reference/kubectl/cheatsheet/
minikube version
minikube start
Now we have kubectl
available
- save pod name:
export POD_NAME=$(kubectl get pods -o go-template --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')
kubectl proxy
curl http://localhost:8001/api/v1/namespaces/default/pods/$POD_NAME/proxy/
kubectl exec -it $POD_NAME bash
Deploy app:
kubectl run kubernetes-bootcamp --image=gcr.io/google-samples/kubernetes-bootcamp:v1 --port=8080
kubectl get deployments
kubectl expose deployment tomcat-deployment --type=LoadBalancer --port=8080 --target-port=8080 --name=tomcat-load-balancer
kubectl expose deployment/kubernetes-bootcamp --type="NodePort" --port 8080
curl $(minikube ip):$NODE_PORT
curl $(minikube service <servicename> --url)
Create an environment variable called NODE_PORT that has the value of the Node port assigned:
export NODE_PORT=$(kubectl get services/kubernetes-bootcamp -o go-template='{{(index .spec.ports 0).nodePort}}')
Get by label:
kubectl get pods -l <label>
Apply new label:
kubectl label pod $POD_NAME app=v1
kubectl delete service -l run=kubernetes-bootcamp
kubectl scale deployments/kubernetes-bootcamp --replicas=4
kubectl get pods -o wide
kubectl set image deployments/kubernetes-bootcamp kubernetes-bootcamp=jocatalin/kubernetes-bootcamp:v2
kubectl rollout status deployments/kubernetes-bootcamp
kubectl rollout undo deployments/kubernetes-bootcamp
kubectl rollout history
kubectl get pods
kubectl get pods [pod name]
kubectl expose <type name> <identifier/name> [—port=external port] [—target-port=container-port [—type=service-type]
kubectl port-forward <pod name> [LOCAL_PORT:]REMOTE_PORT]
kubectl attach <pod name> -c <container>
kubectl exec [-it] <pod name> [-c CONTAINER] — COMMAND [args…]
kubectl label [—overwrite] <type> KEY_1=VAL_1 ….
kubectl run <name> —image=image