content here
minikube start --cpus=4 --memory=8GB --disk-size=20G --addons=registry,ingress
// Create a namespace
kubectl create namespace my-namespace
// Create a deployment
kubectl create deployment my-deployment --image=nginx --namespace=my-namespace
// Create a service
kubectl expose deployment my-deployment --port=80 --target-port=80 --namespace=my-namespace
// Create an ingress
kubectl apply -f ingress.yaml --namespace=my-namespace
// Create a secret
kubectl create secret generic my-secret --from-literal=secret-key=secret-value --namespace=my-namespace
// Create a configmap
kubectl create configmap my-configmap --from-literal=config-key=config-value --namespace=my-namespace
// Create a job
kubectl apply -f job.yaml --namespace=my-namespace
// Create a cronjob
kubectl apply -f cronjob.yaml --namespace=my-namespace
// Create a statefulset
kubectl apply -f statefulset.yaml --namespace=my-namespace
// Create a daemonset
kubectl apply -f daemonset.yaml --namespace=my-namespace
// Create a pod
kubectl apply -f pod.yaml --namespace=my-namespace
// Create a serviceaccount
kubectl apply -f serviceaccount.yaml --namespace=my-namespace
// Create a role
kubectl apply -f role.yaml --namespace=my-namespace
// Create a rolebinding
kubectl apply -f rolebinding.yaml --namespace=my-namespace
// Create a clusterrole
kubectl apply -f clusterrole.yaml --namespace=my-namespace
// Create a clusterrolebinding
kubectl apply -f clusterrolebinding.yaml --namespace=my-namespace
// Create a persistentvolume
kubectl apply -f persistentvolume.yaml --namespace=my-namespace
// Create a persistentvolumeclaim
kubectl apply -f persistentvolumeclaim.yaml --namespace=my-namespace
// Create a storageclass
kubectl apply -f storageclass.yaml --namespace=my-namespace
// Create a resourcequota
kubectl apply -f resourcequota.yaml --namespace=my-namespace
// Create a limitrange
kubectl apply -f limitrange.yaml --namespace=my-namespace
// Create a horizontalpodautoscaler
kubectl apply -f horizontalpodautoscaler.yaml --namespace=my-namespace
// Create a priorityclass
kubectl apply -f priorityclass.yaml --namespace=my-namespace
// Create a poddisruptionbudget
kubectl apply -f poddisruptionbudget.yaml --namespace=my-namespace
// Create a networkpolicy
kubectl apply -f networkpolicy.yaml --namespace=my-namespace
// Create a podsecuritypolicy
kubectl apply -f podsecuritypolicy.yaml --namespace=my-namespace
// Create a podpreset
kubectl apply -f podpreset.yaml --namespace=my-namespace
// Create a customresourcedefinition
kubectl apply -f customresourcedefinition.yaml --namespace=my-namespace
// Get all namespaces
kubectl get namespaces
// Get all pods
kubectl get pods --namespace=my-namespace
// Get all services
kubectl get services --namespace=my-namespace
// Get all deployments
kubectl get deployments --namespace=my-namespace
// Get all ingresses
kubectl get ingresses --namespace=my-namespace
// Get all secrets
kubectl get secrets --namespace=my-namespace
// Get all configmaps
kubectl get configmaps --namespace=my-namespace
// Get all jobs
kubectl get jobs --namespace=my-namespace
// Get all cronjobs
kubectl get cronjobs --namespace=my-namespace
// Get all statefulsets
kubectl get statefulsets --namespace=my-namespace
// Get all daemonsets
kubectl get daemonsets --namespace=my-namespace
// Get all pods
kubectl get pods --namespace=my-namespace
// Get all serviceaccounts
kubectl get serviceaccounts --namespace=my-namespace
// Get all roles
kubectl get roles --namespace=my-namespace
// Get all rolebindings
kubectl get rolebindings --namespace=my-namespace
## Setting up minikube
// Install minikube
brew install minikube
// Install kubectl
brew install kubectl
// Install hyperkit
brew install hyperkit
// Install helm
brew install helm
// Install kubectx
brew install kubectx
// Install kubens
brew install kubens
## Windows setup minikube
// Install minikube
choco install minikube
// Install kubectl
choco install kubernetes-cli
// Install hyperkit
choco install hyperkit
// Install helm
choco install kubernetes-helm
// Install kubectx
choco install kubectx
##Prerequisites
Please make sure the following prerequisites are met:
An existing Kubernetes Cluster (v1.17.0 or higher) - This can also be Minikube (See below for setting up Minikube)
The kubectl client (v1.17.0 or higher) - Available from here - https://kubernetes.io/docs/tasks/tools/install-kubectl/
Helm v3 - Available from here - https://helm.sh/docs/intro/install/
Reference:
https://github.com/gogodi91/K8sDevTools
https://github.com/mcaimi/k8s-demo-app
Reference to setup Jenkins shared library:
https://github.com/liejuntao001/jenkins-k8sagent-lib