前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一篇文章教你实战Docker容器数据卷

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

原创
作者头像
凯哥Java
发布2022-12-12 10:30:38
9680
发布2022-12-12 10:30:38
举报
文章被收录于专栏:凯哥Java

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

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

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

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

docker_miage2.png
docker_miage2.png

大家好,我是凯哥Java(kaigejava),乐于分享,每日更新技术文章,欢迎大家关注“凯哥Java”,及时了解更多。让我们一起学Java。也欢迎大家有事没事就来和凯哥聊聊~~~

直通车,本系列教程已发布文章,快速到达,《Docker学习系列》教程已经发布的内容如下:

【图文教程】Windows11下安装Docker Desktop

【填坑】在windows系统下安装Docker Desktop后迁移镜像位置

【Docker学习系列】Docker学习1-docker安装

【Docker学习系列】Docker学习2-docker设置镜像加速器

【Docker学习系列】Docker学习3-docker的run命令干了什么?docker为什么比虚拟机快?

【Docker学习系列】Docker学习2-常用命令之启动命令和镜像命令

【Docker学习系列】Docker学习系列3:常用命令之容器命令

【Docker学习系列】Docker学习4-常用命令之重要的容器命令

【Docker教程系列】Docker学习5-Docker镜像理解

【Docker教程系列】Docker学习6-Docker镜像commit操作案例

【Docker学习教程系列】7-如何将本地的Docker镜像发布到阿里云

【Docker学习教程系列】8-如何将本地的Docker镜像发布到私服?

【Docker学习教程系列汇总】笔记及遇到问题解决文章

「Docker学习系列教程」9-Docker容器数据卷介绍

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

1.1:命令公式:

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

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

实例:

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

clipboard.png
clipboard.png

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

clipboard.png
clipboard.png

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

clipboard.png
clipboard.png

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

clipboard.png
clipboard.png
clipboard.png
clipboard.png

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

命令公式:

docker inspect 容器id

clipboard.png
clipboard.png

再到 Mounts这个部分:

clipboard.png
clipboard.png

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

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

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

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

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

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

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

clipboard.png
clipboard.png

设置只读权限的命令公式

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

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

ro:read only.

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

clipboard.png
clipboard.png

3:卷的继承和共享

案例:

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

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

clipboard.png
clipboard.png

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

命令公式

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

clipboard.png
clipboard.png
clipboard.png
clipboard.png

在u2容器中,查看tmp目录

clipboard.png
clipboard.png

可以看到已经存在了。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1:宿主机VS容器之间映射添加容器卷
    • 1.1:命令公式:
      • 1.2:查看数据卷是否挂载成功
        • 1.3:容器和宿主机之间数据共享
        • 2:读写规则映射添加说明
        • 3:卷的继承和共享
        相关产品与服务
        容器服务
        腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档