Docker容器数据卷是什么
卷就是目录或文件,存在于一个或多个容器中,由docker挂载到容器,但不属于联合文件系统,因此能够绕过Union File System提供一些用于持续存储或共享数据的特性:
卷的设计目的就是数据的持久化,完全独立于容器的生存周期,因此Docker不会在容器删除时删除其挂载的数据卷
·一句话:有点类似我们Redis里面的rdb和aof文件
·将docker容器内的数据保存进宿主机的磁盘中
·运行一个带有容器卷存储功能的容器实例
· docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录 镜像名
入门案例
启动docker之后,输入命令
docker run -it --privileged=true -v /tmp/host_data:/tmp/docker_data ba6acccedd29
没有目录,docker会自动的给你创建
我们先在docker里面对应的目录下建一个文件
我们到虚拟机里面的目录下看看
以上说明已经同步过来了,反之也可以同步;
相当于双向绑定
查看数据卷是否挂载成功
docker inspect 容器ID
·容器和宿主机之间数据共享
1 docker修改,主机同步获得
2 主机修改,docker同步获得
3 docker容器stop,主机修改,docker容器重启看数据是否同步。
·读写规则映射添加说明
rw
· docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:rw 镜像名
·默认同上案例,默认就是rw
只读
限制的是容器
· docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:ro 镜像名
卷的继承和共享
docker run -it --privileged=true --volumes-from 父类 --name u2 ubuntu