Docker

docker容器卷

2020-04-11  本文已影响0人  码农GG

1.作用

容器的持久化,容器间继承+共享数据

2.数据卷

2.1命令添加
2.1.1命令
docker run -it -v /宿主机目录:/容器内目录 镜像名 /bin/bash

image.png

2.1.2查看数据卷是否挂载成功
docker inspect 642b8e9fc08a

image.png image.png

2.1.3容器和宿主机间数据共享

image.png

2.1.4容器停止退出后,主机修改后数据是否同步

image.png

2.1.5容器数据带权限(只读)
docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名

image.png
image.png

2.2DockerFile添加
2.2.1根目录下新建mydocker文件夹并进入

2.2.2构建dockerfile文件,使用VOLUME指令给镜像添加多个数据卷

image.png

2.2.3build后生成镜像(lw/centos)
docker build -f /mydocker/dockerfile -t lw/centos .

image.png

2.2.4run 容器查看容器和主机绑定目录

image.png

2.3备注
Docker挂载主机目录Docker访问出现cannot open directory .: Permission denied
解决办法:在挂载目录后多加一个--privileged=true参数即可

3.数据卷容器

命名的容器挂载数据卷,其它容器通过挂载这个(父容器)实现数据共享,挂载数据卷的容器,称之为数据卷容器(活动硬盘挂活动硬盘实现数据的传递依赖)

3.1启动父容器dc01,子容器dc02,dc03继承dc01
docker run -it --name dc01 lw/centos
docker run -it --name dc02 --volumes-from dc01 lw/centos
docker run -it --name dc03 --volumes-from dc01 lw/centos

3.2 3个容器分别创建数据文件,都能共享

image.png
image.png
image.png image.png

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

上一篇 下一篇

猜你喜欢

热点阅读