hostPath
VolumehostPath
einbindethostPath
verstehenhostPath
-Pod YAML erstellenErstelle die Datei hostpath-pod.yaml
mit folgendem Inhalt:
apiVersion: v1
kind: Pod
metadata:
name: hostpath-demo
spec:
containers:
- name: ubuntu
image: ubuntu
command: ["sleep", "3600"]
volumeMounts:
- mountPath: /data
name: my-volume
volumes:
- name: my-volume
hostPath:
path: /tmp/hostdata
type: DirectoryOrCreate
Erläuterung:
hostPath.path: /tmp/hostdata
: Dieser Pfad wird auf dem Node (nicht im Container!) verwendet.DirectoryOrCreate
: Wenn /tmp/hostdata
auf dem Node nicht existiert, wird es automatisch erstellt./data
verfügbar.kubectl apply -f hostpath-pod.yaml
kubectl exec -it hostpath-demo -- bash
Dann im Container:
echo "Hello from inside the container" > /data/test.txt
exit
Voraussetzung: Du kannst auf den Node zugreifen (z. B. bei minikube oder kind möglich)
minikube ssh
cat /tmp/hostdata/test.txt
Du solltest sehen:
Hello from inside the container
kubectl delete pod hostpath-demo
Optional: Auf dem Host den Ordner löschen
minikube ssh
sudo rm -rf /tmp/hostdata