通过dockerfile创建挂载点
通过dockerfile创建挂载点
上面介绍的通过docker run命令的-v标识创建的挂载点只能对创建的容器有效。
通过dockerfile的 VOLUME 指令可以在镜像中创建挂载点,这样只要通过该镜像创建的容器都有了挂载点。
还有一个区别是,通过 VOLUME 指令创建的挂载点,无法指定主机上对应的目录,是自动生成的。
#test FROM ubuntu MAINTAINER hello1 VOLUME ["/data1","/data2"]
上面的dockfile文件通过VOLUME指令指定了两个挂载点 /data1 和 /data2.
我们通过docker inspect 查看通过该dockerfile创建的镜像生成的容器,可以看到如下信息
"Mounts": [{"Name": "d411f6b8f17f4418629d4e5a1ab69679dee369b39e13bb68bed77aa4a0d12d21","Source": "/var/lib/docker/volumes/d411f6b8f17f4418629d4e5a1ab69679dee369b39e13bb68bed77aa4a0d12d21/_data","Destination": "/data1","Driver": "local","Mode": "","RW": true},{"Name": "6d3badcf47c4ac5955deda6f6ae56f4aaf1037a871275f46220c14ebd762fc36","Source": "/var/lib/docker/volumes/6d3badcf47c4ac5955deda6f6ae56f4aaf1037a871275f46220c14ebd762fc36/_data","Destination": "/data2","Driver": "local","Mode": "","RW": true}],
可以看到两个挂载点的信息。
三、容器共享卷(挂载点)
docker run --name test1 -it myimage /bin/bash
上面命令中的 myimage是用前面的dockerfile文件构建的镜像。 这样容器test1就有了 /data1 和 /data2两个挂载点。
下面我们创建另一个容器可以和test1共享 /data1 和 /data2卷 ,这是在 docker run中使用 --volumes-from标记,如:
可以是来源不同镜像,如:
docker run --name test2 -it --volumes-from test1 ubuntu /bin/bash
也可以是同一镜像,如:
docker run --name test3 -it --volumes-from test1 myimage /bin/bash
上面的三个容器 test1 , test2 , test3 均有 /data1 和 /data2 两个目录,且目录中内容是共享的,任何一个容器修改了内容,别的容器都能获取到。
通过dockerfile创建挂载点相关推荐
- docker学习笔记(四)——Dockerfile创建自定义镜像
用Dockerfile创建docker,注意下,建议在空文件夹下创建 本篇我们将完成: 1.用Dockerfile创建docker 2.端口映射 3.卷挂载,即docker目录挂载到宿主机 1.用Do ...
- docker镜像了解(建立私有仓库,基于已有镜像创建,Docker的数据管理) 基于Dockerfile创建,基于本地模板创建,端口映射,容器互联)
文章目录 docker镜像 制作镜像的过程 基于已有镜像创建 基于本地模板创建 基于Dockerfile创建 Dockerfile操作指令 Docker的数据管理 数据卷 docker的网络通信 容器 ...
- 通过Dockerfile创建docker镜像
创建镜像三种方法 Docker镜像创建方法有三种,分别为基于已有镜像创建.基于本地模板创建以及基于Dockerfile创建. 通过Dockerfile创建镜像 这里主要记录下基于Dockerfile创 ...
- Dockerfile创建镜像
Dockerfile创建镜像 Dockerfile常见的命令 Dockerfile就是用来构建docker镜像的源码,是一些命令的组合,编写dockerfile可以定制化docker image. 镜 ...
- 模板会有多层镜像_创建镜像的方法有三种:基于已有镜像的容器创建、基于本地模板导入、基于Dockerfile创建,本博文讲解前两种。基于已有镜像的容器创建该方法是使用docke...
创建镜像的方法有三种:基于已有镜像的容器创建.基于本地模板导入.基于Dockerfile创建,本博文讲解前两种. 基于已有镜像的容器创建 该方法是使用docker commit命令,其命令格式为: d ...
- 【系列8】使用Dockerfile创建带MongoDB的Centos Docker镜像
MongoDB是一款可扩展.高性能的开源文档(Document-Oriented)数据库.它采用C++开发,支持复杂的数据类型和强大的查询语言,提供了关系数据库的绝大部分功能.MongoDB由于其高性 ...
- kubernetes 用dockerfile 创建jenkins容器
dockerfile 创建jenkins 下载链接 :Docker Hub jenkins_for_Centos版本 ##这里用的是jenkinsforCentos版本 [root@hy-202 ~] ...
- 创建挂载点+vue的本文指令使用
需求: <1>. 创建挂载点 <2>. 实例化vue对象,让其在挂载点中生效 <3>. 在实例中定义多个数据,并且在挂载点中展示 <!DOCTYPE html ...
- 创建挂载squashfs
创建挂载squashfs 创建 mksquashfs /some/dir dir.sqsh 挂载 mount dir.sqsh /mnt/dir -t squashfs -o loop 设备上创建 m ...
最新文章
- SpringDataJpa框架单元测试实现增删改查
- mysql 函数依赖关系_MySQL关系规范化
- vue 项目引用static目录资源_vuejs-templates静态资源目录src/assets、和static/区别
- 为什么需要两个Survivor区?
- 程序人生:这5个程序员,改变了世界,你都认识吗!
- android判断是否json格式,android – 检查JSON中是否存在subObject
- 力士乐电源模块故障代码_奥的斯电梯OVF402,OVF404,OVF406驱动器故障代码
- UCI数据集+机器学习+十折交叉验证
- 双栏显示的时候三线格的线太长怎么办?
- fme坐标转换器_FME坐标点提取
- 解决azkaban使用腾讯企业邮箱发邮件失败问题
- 计算机高程知识点,测量学复习基本知识点(全).doc
- Mybatis自定义轻量级分页组件(易集成,易拓展)
- 蓝鲸智云统一开发环境搭建指南
- 从源码搭建MPlayer-1.3.0播放器
- 【雅思】【绿宝书错词本】List25~36
- wordpress大前端主题DUX7.1免授权
- 刚刚,阿里重磅发布机器学习平台PAI 3.0!
- Java三齐王乱点兵算法,【ACM】韩信点兵算法
- mybatis报错Unsatisfied dependency expressed through field ‘baseMapper‘解决方案
热门文章
- 必看!今年端午高速不免费,这份出行指南请收下
- SVN小乌龟 merge分支到主干时,代码冲突的解决思路
- python中round函数使用
- 神奇的“狼抓兔子”(The absolute security Place)
- 2023年北京.NET线下技术沙龙来了!大咖分享,还有精品好礼等你
- java json格式美化
- Numpy transpose函数理解
- nrf52832使用nrfconnect通过安卓和苹果(IOS)手机升级固件
- 对战五子棋——网页版
- 设计一个日期类(CDate),属性为年、月、日,成员函数为设置当前日期setDate(…)、当前日期加一天increaseDate()和显示日期showDate()