我的团队并不都在本地的同一个地方拥有我们的代码,但我们都在同一个服务上工作。该服务依赖于其他一些库,在开发过程中,最好将这些库的实时版本安装到 pod 中以加快迭代速度。
路径如何变得动态并不重要,环境变量、配置映射、奇怪的卷安装魔法等......
我目前的方法使用 helm 来模板化 yaml。我希望能够做这样的事情:
volumes:
- name: my-lib
hostPath:
path: $CODE_PATH/my_lib
volumeMounts:
- name: my-lib
mountPath: /tmp/my_lib
我的团队成员可以从外部定义的位置CODE_PATH
,允许他们指出他们保存代码的位置。我不喜欢这样做的方法;目前,我的无论如何都不起作用。我只需要能够将主机目录挂载到 pod 中,而无需在 yaml 中静态定义绝对路径。
根据官方文档,有两种方法可以实现这一点,但在这两种方法中都必须定义 hostPath。第一种方法是使用hostPath,其中 hostPath 卷使用节点的本地磁盘来挂载卷,并在 Docker 桌面的 Preferences->File Sharing 中指定 hostPath。第二种方法是使用PersistentVolume方法,其中集群管理员创建卷,Pod 可以通过 PersistentVolumeClaims(卷及其存储机制之间的抽象级别)访问它们。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句