码迷,mamicode.com
首页 > 其他好文 > 详细

docker数据卷容器

时间:2020-06-26 20:13:41      阅读:52      评论:0      收藏:0      [点我收藏+]

标签:lock   nta   attr   操作   目的   演示   air   end   image   

docker数据卷容器

什么是docker数据卷容器?

命名的容器挂载数据卷,其它容器通过挂载这个(父容器)实现数据共享,挂载数据卷的容器,称之为数据卷容器()

操作一波?

1、先启动一个上次整的那个tzh/centos的容器、然后在dataVolumeContainer2新建任意文件

docker run -it --name qaz01 tzh/centos
cd dataVolumeContainer2/
echo "aaaa" > test

2、再启动一个qaz02/qaz03继承qaz01、然后分别在qaz02/qaz03的dataVolumeContainer2新建任意文件

#继承命令关键字:   --volumes-from 
#用法:子 --volumes-from 父
?
---------qaz02继承qaz01------------
docker run -it --name qaz02 --volumes-from qaz01 tzh/centos
#进入qaz02的dataVolumeContainer2 查看发现有刚刚我们新建的test
[root@d55f9daa449f dataVolumeContainer2]# pwd
/dataVolumeContainer2
[root@d55f9daa449f dataVolumeContainer2]# ls
test
#再新建一个任意的文件
[root@d55f9daa449f dataVolumeContainer2]# echo bbbbbbbbb test02  
[root@d55f9daa449f dataVolumeContainer2]# ls
test test02
?
---------qaz03继承qaz01------------
#再开一个容器qaz03,且继承qaz01
docker run -it --name qaz03 --volumes-from qaz01 tzh/centos
#进入qaz03的dataVolumeContainer2 查看发现有刚刚我们新建的test、test02
[root@0c9d57f3eff9 dataVolumeContainer2]# pwd
/dataVolumeContainer2
[root@0c9d57f3eff9 dataVolumeContainer2]# ls
test test02
#再新建一个任意文件
[root@0c9d57f3eff9 dataVolumeContainer2]# echo ccccccccccccc > test03
[root@0c9d57f3eff9 dataVolumeContainer2]# ls
test test02 test03
?
--------------------
#现在我们一共开了三个容器
[root@tzh ~]# docker ps
CONTAINER ID   IMAGE         COMMAND                 CREATED         STATUS         PORTS   NAMES
0c9d57f3eff9   tzh/centos    "/bin/sh -c /bin/bash"   5 minutes ago   Up 5 minutes           qaz03
d55f9daa449f   tzh/centos    "/bin/sh -c /bin/bash"   8 minutes ago   Up 9 minutes           qaz02
f3cc837df61c   tzh/centos    "/bin/sh -c /bin/bash"   9 minutes ago   Up 16 minutes         qaz01
#然后我们进入qaz01看看是否有刚刚在qaz02、qaz03中新建的文件
命令:docker attach qaz01
#查看
[root@f3cc837df61c dataVolumeContainer2]# pwd
/dataVolumeContainer2
[root@f3cc837df61c dataVolumeContainer2]# ls
test test02 test03
#到qaz02也是这三个文件!不做演示

总结:发现qaz01有刚刚qaz02、qaz03新建的文件,说明我们达到了数据继承、数据共享的目的!!!

思考1:如果我们把父容器给干掉,请问子容器的数据是否还在呢?

思考2:在父容器被干掉的情况下,在qaz02的dataVolumeContainer2下新建文件,请问会同步到qaz03吗?

思考3:再起一个容器qaz04,继承03,那么04会不会有同样的数据呢?

结论:只要这些关联起来的容器没有全部宕机,那么数据就会一直传递下去!

 

docker数据卷容器

标签:lock   nta   attr   操作   目的   演示   air   end   image   

原文地址:https://www.cnblogs.com/hsyw/p/13195922.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!