您当前的位置: 首页 >  容器

小志的博客

暂无认证

  • 0浏览

    0关注

    1217博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

数据卷容器

小志的博客 发布时间:2019-07-08 12:24:36 ,浏览量:0

一、数据卷容器是什么?

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

二、总体介绍

1、以 这篇文章中新建的镜像zzyy/centos 为模板并运行容器dc01/dc02/dc03

2、它们已经具有容器卷(/dataVolumeContainer1和/dataVolumeContainer2)

三、容器间传递共享(–volumes-from)

1、先启动一个父容器dc01,在dataVolumeContainer2新增内容

[root@localhost]# docker images zzyy/centos
REPOSITORY   TAG    IMAGE ID    CREATED   VIRTUAL SIZE
zzyy/centos      latest   980c9235ff13  18 hours age   199.7 MB
[root@localhost]# docker run --name dc01 zzyy/centos
[root@5ae43b1bcf46]# ll

在这里插入图片描述

[root@5ae43b1bcf46]# cd dataVolumeContainer2
[root@5ae43b1bcf46 dataVolumeContainer2]# pwd
/dataVolumeContainer2
[root@5ae43b1bcf46 dataVolumeContainer2]# ll
total 0
[root@5ae43b1bcf46 dataVolumeContainer2]# touch dc01_add.txt
[root@5ae43b1bcf46 dataVolumeContainer2]# 按住Ctrl+p+q退出到宿主机根目录
[root@localhost]# docker ps
CONTAINER ID     IMAGE      COMMAND           CREATED           STATUS      PORTS  NAMES  
5ae43b1bcf46 zzyy/centos "/bin/sh -c /bin/bas Up About a minute                     dc01
[root@localhost]#

2、dc02/dc03继承自dc01,dc02/dc03分别在dataVolumeContainer2各自新增内容,命令如下:docker run -it --name dc02 --volumes-from dc01 zzyy/centos

dc02继承自dc01命令如下:

[root@localhost]#docker run -it --name dc02 --volumes-from dc01 zzyy/centos
[root@978bd77d033]# ll

在这里插入图片描述

[root@978bd77d033]# cd dataVolumeContainer2
[root@978bd77d033 dataVolumeContainer2]# pwd
/dataVolumeContainer2
[root@978bd77d033 dataVolumeContainer2]# ll
total 0
--rw-r--r--. 1 root root 0 Jul 13 02:23 dc01_add.txt 
[root@978bd77d033 dataVolumeContainer2]# touch dc02_add.txt
[root@978bd77d033 dataVolumeContainer2]# 按住Ctrl+p+q退出到宿主机根目录
[root@localhost]# docker ps

在这里插入图片描述 dc03继承自dc01命令如下:

[root@localhost]#docker run -it --name dc03 --volumes-from dc01 zzyy/centos
[root@11ddcf53de8c]# cd dataVolumeContainer2
[root@11ddcf53de8c dataVolumeContainer2]# ll
total 0
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc01_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_add.txt
[root@11ddcf53de8c dataVolumeContainer2]#touch dc03_add.txt
[root@11ddcf53de8c dataVolumeContainer2]# 按住Ctrl+p+q退出到宿主机根目录
[root@localhost]# docker ps

在这里插入图片描述3、回到dc01可以看到02/03各自添加的都能共享了

[root@localhost]# docker attach dc01
[root@5ae43b1bcf46 dataVolumeContainer2]# pwd
/dataVolumeContainer2
[root@5ae43b1bcf46 dataVolumeContainer2]# ll
total 0
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc01_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc03_add.txt
[root@5ae43b1bcf46 dataVolumeContainer2]# 

4、删除dc01并修改dc02后,dc03可否访问 删除dc01

[root@localhost]# docker ps

在这里插入图片描述

[root@localhost]# docker rm -f doc01
doc01
[root@localhost]# docker ps

在这里插入图片描述修改dc02

[root@localhost]# docker docker attach doc02
[root@9784bd77d033 dataVolumeContainer2]# pwd
/dataVolumeContainer2
[root@9784bd77d033 dataVolumeContainer2]# ll
total 0
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc01_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc03_add.txt
[root@9784bd77d033 dataVolumeContainer2]#touch dc02_update.txt
[root@9784bd77d033 dataVolumeContainer2]#ll
total 0
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc01_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_update.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc03_add.txt
[root@9784bd77d033 dataVolumeContainer2]# 按住Ctrl+p+q退出到宿主机根目录
[root@localhost]# 

可访问dc03

[root@localhost]#  docker attach dc03
[root@11ddcf53de8c dataVolumeContainer2 ]# pwd
/dataVolumeContainer2 
[root@11ddcf53de8c dataVolumeContainer2 ]# ll
total 0
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc01_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_update.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc03_add.txt

5、在删除dc01的基础上,再删除dc02,dc03可否访问

删除dc02

[root@localhost]# docker ps

在这里插入图片描述

[root@localhost]# docker rm -f doc02
doc02
[root@localhost]# docker ps

在这里插入图片描述可访问dc03

[root@localhost]#  docker attach dc03
[root@11ddcf53de8c dataVolumeContainer2 ]# pwd
/dataVolumeContainer2 
[root@11ddcf53de8c dataVolumeContainer2 ]# ll
total 0
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc01_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_add.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc02_update.txt
-rw-r--r--. 1 root root 0 Jul 13 02:23 dc03_add.txt

6、结论

结论:容器之间配置信息的传递,数据卷的生命周期一直持续到没有容器使用它为止

关注
打赏
1661269038
查看更多评论
立即登录/注册

微信扫码登录

0.0404s