【发布时间】:2019-06-02 01:59:17
【问题描述】:
我在 Windows 10 上使用 Docker Desktop。出于开发目的,我想将本地文件夹公开给容器。在 Docker 中运行容器时,我通过指定卷标志 (-v) 来执行此操作。
在 Kubernetes 中运行容器时如何实现相同的效果?
【问题讨论】:
标签: docker kubernetes persistent-volumes
我在 Windows 10 上使用 Docker Desktop。出于开发目的,我想将本地文件夹公开给容器。在 Docker 中运行容器时,我通过指定卷标志 (-v) 来执行此操作。
在 Kubernetes 中运行容器时如何实现相同的效果?
【问题讨论】:
标签: docker kubernetes persistent-volumes
您应该在 pod 的规范中使用 hostpath 卷类型从主机节点的文件系统挂载文件或目录,其中 hostPath.path 字段应采用以下格式以接受类似 Windows 的路径:
请查看this github 问题,该问题解释了 Windows 上 Kubernetes 卷的特性。 我还假设您在 Docker for Windows 安装中启用了Shared Drives 功能。
【讨论】:
path: /C/config 和type: DirectoryOrCreate 创建文件夹并且一切正常,但我不知道该文件夹在主机文件系统中的位置(它不在 C:/config 中)
使用 k8s 1.21.5,以下类型的路径对我有用:
/run/desktop/mnt/host/c/PATH/TO/FILE
挖掘这个 github 问题帮助我解决了使用哪个路径: https://github.com/kubernetes/kubernetes/issues/59876
【讨论】: