1.通过dockerfile创建有数据卷的容器并命名为:dvt1:
Dockerfile内容如下:
FROM ubuntu:16.04
VOLUME ["/datavolume1","/datavolume2"]
CMD /bin/bash
进入容器:
[root@node3 dockerfile3]# docker run -it --name dvt1 three/dvt
这时可以看到容器中有两个数据卷datavolume1 datavolume2:
root@3404e088a973:/# ls
bin boot datavolume1 datavolume2 dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
2.在其中一个数据卷中新建一个one.txt的文件
root@4306d22be80a:/datavolume1# touch ont.txt
3.运行一个容器将其挂载到第一个容器中,即:dvt1
# docker run -it --name dvt2 --volumes-from dvt1 ubuntu /bin/bash
可以查看到数据卷中有容器dvt1新建的文件:one.txt
root@219b9cc8e295:/datavolume1# ls
ont.txt
并在这个目录下创建一个文件:two.txt
root@219b9cc8e295:/datavolume1# touch two.txt
root@219b9cc8e295:/datavolume1# ls
ont.txt two.txt
4.再运行一个容器dvt3将其挂载到第一个容器dvt1中:
root@node3 ~]# docker run -it --name dvt3 --volumes-from dvt1 ubuntu /bin/bash
进入数据卷可以查看到容器dvt1 和 dvt 2创建的文件。
root@f94333a7ba48:/# cd datavolume1
root@f94333a7ba48:/datavolume1# ls
ont.txt two.txt
#即使数据卷容器被删除,另外一个容器中数据卷的目录仍然存在。
查看数据卷挂载的详细信息:
#docker inspect --format=”{{.volumes}}” dvt2