一、数据卷概念
我们在使用Docker时,我们会遇到下面一些问题:
- 当Docker 里的容器挂了以后打不开,这时候只有放弃该容器了,但连在容器中的产生的数据也需要一起删除,这是一个非常大的损失。
2、Docker容器不能和外部机器直接交换文件,但可以与外部宿主机能交换数据。
3、Docker容器与容器之间不能直接交换数据。
数据卷
数据卷是宿主机中的一个目录或者文件,当容器目录挂载了宿主机的目录之后,这样就成为了一个数据卷,两边的文件就会同步。一个数据卷可以被多个容器同时挂载。这样就能解决以上的问题。
数据卷作用:
- 容器数据持久化
- 外部机器和容器间接通信
- 容器之间数据交换
配置数据卷
单个容器挂载
创建启动容器时,使用-V参数设置数据卷
docker run … -v宿主机目录(文件):容器内日录(文件)…
·注意事项:
1.目录必须是绝对路径
2.如果目录不存在,会自动创建
3.可以挂载多个数据卷
两个容器挂载
数据卷容器
1.创建启动c3数据卷容器,使用-V参数设置数据卷
docker run -it --name=c3 -v /volume centos:7 /bin/bash
2.创建启动c1c2容器,使用-volumes-from参数设置数据卷
docker run -it --name=c1 --volumes-from c3 centos:7 /bin/bash
docker run -it --name=c2 --volumes-from c3 centos:7 /bin/bash