【Docker】数据卷容器

多个容器进行数据交换

这里引入一个数据卷容器的概念

以下介绍容器A与容器B进行数据交换的原理

【Docker】数据卷容器_第1张图片

 假如容器A要与容器 B 进行数据交换,  首先创建一个容器C,将他挂载到数据卷,然后再将容器A与容器B挂载到容器C,这样做相当于容器A与容器B也挂载到了数据卷上,这就意味着容器A,容器B,容器C三个容器之间可以进行数据的传输和通信,即使容器C后面出问题,那么容器A与容器B也能进行数据的传输与通信。

配置数据卷容器

创建启动数据卷容器C,并使用-v 设置数据卷

docker run -it --name=C -v /volume centos:7 /bin/bash
 

【Docker】数据卷容器_第2张图片

这里没有写出 绝对目录,但是docker会给这个容器分配一个目录,我们来查看一下分配了一个什么目录

克隆一个会话 

【Docker】数据卷容器_第3张图片 

【Docker】数据卷容器_第4张图片

【Docker】数据卷容器_第5张图片 目录

【Docker】数据卷容器_第6张图片 挂载目的地

【Docker】数据卷容器_第7张图片

 创建容器a2 ,a3,挂载到容器 a1 上

docker run -it --name=a2 --volumes-from a1 centos:7
 

【Docker】数据卷容器_第8张图片 

此时a2 上也有一个 volume 的目录

然后我们再克隆一个会话,去创建容器a3 ,并挂载到 a1 上

【Docker】数据卷容器_第9张图片

我们可以查看容器a2 和 容器 a3 的容器信息

可以克隆一个会话

【Docker】数据卷容器_第10张图片

【Docker】数据卷容器_第11张图片 

【Docker】数据卷容器_第12张图片  【Docker】数据卷容器_第13张图片

可以看到容器 a2 和 a3 挂载到同一个目录下,即便容器 a1 被删除,也不会影响 a2 和 a3之间的数据的传输和通信。 

 

 

你可能感兴趣的:(docker,docker,容器,运维)