【发布时间】:2019-06-07 11:45:14
【问题描述】:
我正在尝试运行一个简单的 Kubernetes Pod,并且我想将调度该 pod 的主机的 home 挂载到 /hosthome 目录中。
我正在使用 Kubernetes Python API 在远程集群上部署这些 pod(所以我不能使用 os.path.expanduser('~') 之类的东西,因为它会解析“客户端”主机,而不是远程主机)。
当我尝试使用此卷定义部署 pod 时:
...
volumes:
- name: hosthome
hostPath:
path: ~
...
pod 创建失败并出现以下错误:create ~: volume name is too short, names should be at least two alphanumeric characters。所以我不能使用~快捷方式挂载它。
所以,我的问题是:有没有办法仅使用 YAML 定义(不使用替换或 Python 函数)来挂载调度 pod 的主机的主目录?
谢谢。
【问题讨论】:
-
您是否在 pod 可能运行的每个节点上都有相同的主目录?通常你只想部署一个固定的镜像; Kubernetes 根本就不是为实时开发环境而设计的。
-
是的,我知道这听起来有点奇怪,但我正在使用 Kubernetes 来运行一个网络模拟工具,它需要主目录......这是对 Kubernetes 的“强制”使用,我知道! :)
标签: linux docker kubernetes