You can find here the slides and the sample code of my talk "Kubernetes, das unbekannte Wesen" that I presented on "Java Forum Nord" at 10th September 2024.
The chapter "Runbook" describes the demo steps.
Demonstration Container Build
./00-container-build.sh
Starting Minikube with two nodes
minikube start --nodes 2 --addons=ingress,dashboard
minikube dashboard
Create a simple pod
kubectl apply -f 01-pod.yaml
kubectl get pods
kubectl delete po spring-boot-demo
Create a pod with probes
kubectl apply -f 02-pod-with-probes.yaml
kubectl describe po spring-boot-demo
kubectl delete po spring-boot-demo
Create Service and Pod
kubectl apply -f 03-pod-with-service.yaml
kubectl get pods
kubectl get service
kubectl run -it --rm --restart=Never busybox --image=gcr.io/google-containers/busybox sh
wget http://srv.ip/hero -O - # srv.ip is the Cluster IP column by kubectl get service
Create Ingress
kubectl apply -f 04-ingress.yaml
minikube ip
nano /etc/hosts
Create Config Map and Secrets
kubectl delete po spring-boot-demo
kubectl apply -f 05-config-secret.yaml
kubectl get configmaps
kubectl get secrets
kubectl apply -f 06-pod-with-config.yaml
Create Namespace
kubectl apply -f 07-namespace.yaml
kubectl get namespaces
kubectl get pod --namespace spring-boot-demo-namespace
Create Deployment
kubectl delete ingress spring-demo-ingress
kubectl apply -f 08-deployment.yaml
kubectl delete deployments.apps --namespace spring-boot-demo-namespace spring-boot-demo-deploy
Create Job
kubectl apply -f 09-job.yaml
kubectl get pods -–watch
kubectl logs jobs/demo-job job
kubectl delete job job-demo
Create Cron Job
kubectl apply -f 10-cronjob.yaml
kubectl get cronjobs --watch
kubectl get pods –watch
kubectl logs cronjob-demo
kubectl delete cronjobs cronjob-demo
- Article about Container Image Build Tools (German)