Docker容器

一篇文章教你实战Docker容器数据卷

本文主要是介绍一篇文章教你实战Docker容器数据卷,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在上一篇中,咱们对Docker中的容器数据卷做了介绍。已经知道了容器数据卷是什么?能干什么用。那么本篇咱们就来实战容器数据卷,Docker容器数据卷案例主要做以下三个案例

1:宿主机(也就是Docker所安装的机器)与容器之间的映射-让Docker可以直接访问宿主机上面的指定目录;

2:读写规则映射添加说明-数据券默认是读写权限的,我们可以设置只读权限

3:卷的继承和共享-容器1做了映射后,容器2可以继承容器1,然后容器2也就有了映射关系

https://img1.sycdn.imooc.com/6396982400019dda05530218.jpg

1:宿主机VS容器之间映射添加容器卷

1.1:命令公式:

docker run  -it --privileged=true -v /宿主机绝对路径目录:/容器内目录 镜像名

注意这个命令是在宿主机上执行

实例:

将宿主机/tmp/host_data目录映射到容器的/tmp/docker_data上

https://img3.sycdn.imooc.com/639698bb000142fa05530103.jpg

在d为:bdea29051ebb的容器i的/tmp/docker_data里面创建一个indocker.txt

https://img3.sycdn.imooc.com/639698d90001407705530159.jpg

接着,我们回到宿主机中,查看tmp/host_data目录下:

https://img3.sycdn.imooc.com/639698ef00017c0204710162.jpg


同理,在宿主机上创建了inhost.txt文件,在容器中也可以看到

https://img2.sycdn.imooc.com/639699200001c09605530113.jpg

https://img2.sycdn.imooc.com/63969924000115aa05530087.jpg

1.2:查看数据卷是否挂载成功

命令公式:

docker inspect 容器id

https://img1.sycdn.imooc.com/639699460001de6705530115.jpg

再到 Mounts这个部分:

https://img1.sycdn.imooc.com/6396997800017aa505530183.jpg

我们可以看到type是bind,sorce是宿主机的,destination是容器的

1.3:容器和宿主机之间数据共享

上文案例中的,indocker.txt和inhost.txt案例就是。

思考:当把容器关闭后,在宿主机的目录中,在创建了一个c.txt文件之后,在启动容器,那么容器的挂载目录中会有c.txt文件吗 ?

答案:c.txt文件依然会在容器中

2:读写规则映射添加说明

当宿主机和容器挂载数据卷之后,默认的读写权限就是:“读写”

https://img1.sycdn.imooc.com/6396998a0001a07e05530057.jpg

设置只读权限的命令公式

docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:ro 镜像名称

和默认的区别就是加上了ro参数

ro:read only.

如果在容器内写操作会有以下提示:

https://img1.sycdn.imooc.com/6396999f000176d405530057.jpg

3:卷的继承和共享

案例:

容器1完成和宿主机的映射

容器2继承容器1的卷规则

https://img3.sycdn.imooc.com/639699b8000188a305530288.jpg

容器2继承容器1的卷规则:

命令公式

docker run -it --privileged=true --volumes-from 父类 [name] 镜像名

https://img1.sycdn.imooc.com/639699db00018bf005530050.jpg

https://img3.sycdn.imooc.com/639699de0001514805530302.jpg

在u2容器中,查看tmp目录

https://img4.sycdn.imooc.com/63969a110001b5c805530206.jpg


这篇关于一篇文章教你实战Docker容器数据卷的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!