Docker数据卷与数据卷容器以及容器的互联
Docker数据卷
宿主机与容器之间实现数据共享
概述
- 数据卷是一个提供容器使用的特殊目录
- 宿主机中的目录和容器中目录实现挂载,共享空间
[root@server3 ~]# docker images
[root@server3 ~]# ls /
[root@server3 ~]# docker ps -a
[root@server3 ~]# docker run -v /var/zzz:/data1 --name test3 -it centos:7 /bin/bash
[root@7d460e146953 /]# ls /
[root@7d460e146953 /]# cd data1/
[root@7d460e146953 data1]# touch a.txt #创建一个测试文件
[root@7d460e146953 ~]# exit
exit #返回宿主机查看
[root@server3 ~]# cd /var/
[root@server3 var]# ls
[root@server3 var]# cd zzz/
[root@server3 zzz]# ls
Docker数据卷容器
容器与容器之间实现数据共享
在centos:7镜像中来运行一个名为test4的容器,并且提供两个对外暴露的挂载点
[root@server3 zzz]# docker run --name test4 -v /data1 -v /data2 -it centos:7 /bin/bash
[root@5120e988a40a /]# ls /
新的容器挂载数据卷容器test4
[root@server3 ~]# docker run -it --volumes-from test4 --name ddd centos:7 /bin/bash
[root@f78d5e33ff3d /]# ls /
[root@f78d5e33ff3d /]# cd data1/
[root@f78d5e33ff3d data1]# touch 11.txt
[root@f78d5e33ff3d data1]# cd ..
[root@f78d5e33ff3d /]# cd data2/
[root@f78d5e33ff3d data2]# touch 22.txt
[root@f78d5e33ff3d /]# ls data1/
[root@f78d5e33ff3d /]# ls data1/
[root@f78d5e33ff3d /]# ls data2/
容器互联
[root@server3 ~]# docker run -itd -P --name qwe centos:7 /bin/bash
9f16a5954a2a4aa0a6cab575fd4828f738db2466d085578d69edd877fc415e40
[root@server3 ~]# docker ps -a
[root@server3 ~]# docker exec -it 9f16a5954a2a /bin/bash
[root@9f16a5954a2a /]# yum -y install net-tools
重新开一个会话窗口
[root@server3 ~]# docker ps -a
[root@server3 ~]# docker run -itd -P --name asd --link qwe:qwe centos:7 /bin/bash #创建并运行容器取名asd,链接到qwe和其通信
[root@server3 ~]# docker ps -a
[root@server3 ~]# docker exec -it dbeee340de4c /bin/bash
[root@dbeee340de4c /]# yum -y install net-tools
进asd容器ping qwe
[root@dbeee340de4c /]# ifconfig
[root@dbeee340de4c /]# ping 172.17.0.2