使用镜像卷与 Pod
功能状态:
Kubernetes v1.31 [alpha]
本页面介绍如何使用镜像卷配置 Pod。这允许您将来自 OCI 仓库的内容挂载到容器中。
开始之前
您需要拥有一个 Kubernetes 集群,并且 kubectl 命令行工具必须配置为与您的集群通信。建议在至少有两个节点的集群上运行本教程,这些节点不充当控制平面主机。如果您还没有集群,可以使用 minikube 创建一个,或者可以使用以下 Kubernetes playground 之一
您的 Kubernetes 服务器必须为 v1.31 版本。要检查版本,请输入kubectl version
。- 容器运行时需要支持镜像卷功能
- 您需要在主机上执行命令
- 您需要能够执行进入 Pod
- 您需要启用
ImageVolume
功能特性
运行使用镜像卷的 Pod
Pod 的镜像卷是通过将 .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
运行以下命令
cat /volume/dir/file
输出类似于
1
还可以运行
cat /volume/file
输出类似于
2
进一步阅读
最后修改时间:2024 年 6 月 24 日 下午 10:58 PST: 添加 ImageVolume 文档 (a12454f2dc)