MiniKube
$ minikube start
$ minikube status
$ minikube ssh
$ kubectl run hello-minikube --image=gcr.io/google_containers/echoserver:1.4 --port=8080
$ kubectl expose deployment hello-minikube --type=NodePort
$ kubectl get pod
$ kubectl describe pod name
$ curl $(minikube service hello-minikube --url)
$ minikube stop
$ minikube dashboard
$ minikube ip
PersistentVolume:
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv0001
spec:
accessModes:
- ReadWriteOnce
capacity:
storage: 5Gi
hostPath:
path: /data/pv0001/
$ minikube start --docker-env HTTP_PROXY=http://$YOURPROXY:PORT \
--docker-env HTTPS_PROXY=https://$YOURPROXY:PORT
create pod
$ kubectl create -f http://k8s.io/docs/tasks/configure-pod-container/pod-redis.yaml
$ kubectl get --watch pod redis
$ kubectl exec -it redis -- /bin/bash
# docker run:
# start the pod running nginx
$ kubectl run --image=nginx nginx-app --port=80 --env="DOMAIN=cluster"
# expose a port through with a service
$ kubectl expose deployment nginx-app --port=80 --name=nginx-http
# docker ps
$ kubectl get po
# docker attach
$ kubectl attach -it nginx-app-5jyvm
# docker exec
$ kubectl exec nginx-app-5jyvm -- cat /etc/hostname
# docker logs
$ kubectl logs -f nginx-app-zibvs
by default pods will not terminate if their processes exit. Instead it will restart the process. This is similar to the docker run option –restart=always with one major difference. In docker, the output for each invocation of the process is concatenated but for Kubernetes, each invocation is separate.
$ kubectl logs --previous nginx-app-zibvs
# docker stop and docker rm
$ kubectl get deployment nginx-app
$ kubectl get po -l run=nginx-app
$ kubectl delete deployment nginx-app
$ kubectl get po -l run=nginx-app
# docker info
$ kubectl cluster-info