在 Pod 中使用映像檔 Volume
功能狀態:
Kubernetes v1.31 [alpha]
(預設為啟用:false)本頁說明如何使用映像檔 Volume 設定 Pod。這可讓您將 OCI 登錄檔中的內容掛載到容器內。
準備開始
您需要有一個 Kubernetes 叢集,而且必須將 kubectl 命令列工具設定為與您的叢集通訊。建議在至少有兩個節點且未充當控制平面主機的叢集上執行本教學課程。如果您還沒有叢集,可以使用 minikube 建立一個,或者您可以使用以下 Kubernetes 實驗環境
您的 Kubernetes 伺服器必須是 v1.31 或更新版本。若要檢查版本,請輸入kubectl version
。- 容器執行期需要支援映像檔 Volume 功能
- 您需要在主機中執行指令
- 您需要能夠執行進入 Pod
- 您需要啟用
ImageVolume
功能閘道
執行使用映像檔 Volume 的 Pod
Pod 的映像檔 Volume 透過將 .spec
的 volumes.[*].image
欄位設定為有效的參考,並在容器的 volumeMounts
中使用它來啟用。例如
apiVersion: v1
kind: Pod
metadata:
name: image-volume
spec:
containers:
- name: shell
command: ["sleep", "infinity"]
image: debian
volumeMounts:
- name: volume
mountPath: /volume
volumes:
- name: volume
image:
reference: quay.io/crio/artifact:v1
pullPolicy: IfNotPresent
在您的叢集上建立 Pod
kubectl apply -f https://k8s.io/examples/pods/image-volumes.yaml
附加到容器
kubectl attach -it image-volume bash
檢查 Volume 中檔案的內容
cat /volume/dir/file
輸出結果會類似於:
1
您也可以檢查不同路徑下的另一個檔案
cat /volume/file
輸出結果會類似於:
2
延伸閱讀
上次修改時間為 2024 年 8 月 22 日下午 6:04 PST:修訂 image-volumes 中的步驟描述 (65ce82dd0b)