Minikube ist der perfekte Partner, wenn es darum geht, auf dem eigenen Rechner mal schnell ein Kubernetes Setup zu testen bzw. für die Entwickung.
Aber wie bekommt man ein lokales Image bzw. ein Dockerfile in Minikube, sodass man es z.B. für Deployments verwenden kann?
Mane ersetzt einfach docker mit minikube:
minikube build -t mein-image-name:latest .
Innerhalb eines Deployments kann man nun so auf das Image zugreifen:
apiVersion: apps/v1 kind: Deployment metadata: name: mein-app-name spec: replicas: 1 selector: matchLabels: app: mein-app-name template: metadata: labels: app: mein-app-name spec: containers: - name: mein-app-name image: mein-image-name:latest imagePullPolicy: Never #oder 'IfNotPresent'
Das entscheidende ist tatsächlich die imagePullPolicy – wenn diese nicht auf Never oder IfNotPresent gesetzt wird, dann versucht minikube bzw. kubernetes das image von Docker Hub zu laden.
Alternativ zu “build” kann man mittels “load” auch ein Image, welches man mittels “docker build” gebaut hat, in die minikube registry kopieren.