首页 > 解决方案 > 使用 docker-volum 或等效的 Openshift

问题描述

我是 Openshift 的新手。

我正在开发一个系统,以方便使用 openshift 部署我的测试服务器。以前,一位同事为此准备了 3 个 Docker 镜像:一个带有编译器的主镜像。以及其他一些图像。例如 MQ 客户端和 Oracle DB 客户端。

当我们使用 Docker 时,MQ 客户端的存储库的内容被挂载在主机上的一个文件夹中,主镜像也从主机上挂载(同样的方式)这个文件夹:一句话:我们使用“docker volum”。对 Oracle 客户端执行相同的操作。

这里有一张图片来解释: mounted path image with 100% Docker

当我们将自己连接到 Docker 主镜像时:我们可以转到“/opt”文件夹,我们可以看到来自其他竞争者的文件,因此我们可以看到我们的客户端(MQ、Oracle)。因此,我们可以将 MQ 客户端映像重新用于其他项目。

我想将这 3 个映像部署为 Openshift 上的 Pod,但 Openshift(或 k8s)卷似乎非常不同。在 pod 中,我想做与 Docker 相同的事情。

我尝试使用“hostpath”,但它将一个文件夹从“pod”安装到 docker 映像:所以该文件夹是空的,并且 docker 映像中的文件不可用。

我在 openshift 的世界里很新,所以:有人可以说我想做的事情是否可行?无论如何,这是个好主意吗?如果不是,创建我的 Pod 的正确架构是什么?(一个 docker 图像与所有?)

提前致谢,

标签: dockerkubernetesopenshiftdocker-volumekubernetes-pod

解决方案


是跨两个 pod 共享 NFS-share 的示例,但它可以很容易地适应其他共享存储(GlusterFS 等)。不推荐,但在单节点开发/测试的情况下,您可以使用hostpath来共享主机的文件系统。


推荐阅读