overlay和overlay2的区别

参考:http://blog.csdn.net/styshoo/article/details/60715942

docker pull ubuntu

本质区别是镜像层之间共享数据的方法不同

overlay共享数据方式是通过硬连接

而overlay2是通过每层的 lower文件

root@no1:/var/lib/docker/overlay2# ll
total 32K
drwx------ 3 root root 4.0K 2017-12-13 22:03:57.063074124 -0800 a6350774f0c5a4c89f850252180930a48ae28ca37c33ac3a2ba39585bb3c2c42/
drwx------ 5 root root 4.0K 2017-12-13 22:04:00.471007047 -0800 43a794c7d4fc61414cceedb2914026f09c9228397a885fb2d040278d6a1b5856/
drwx------ 5 root root 4.0K 2017-12-13 22:04:00.511006259 -0800 33a4e0217cb0342f024ee2f093ab7188433b2b231c75999848bd2d36eb501255/
drwx------ 5 root root 4.0K 2017-12-13 22:04:00.539005708 -0800 b3db2d8f59e546b4978148f032e563157310b0455f6c6bab144f6ae6a279986d/
drwx------ 5 root root 4.0K 2017-12-13 22:04:00.567005157 -0800 e46f69d82b2b77d04b095279e173f4f51fb10c7b3a0c27fa688bb52b74fe0b7f/
drwx------ 2 root root 4.0K 2017-12-13 22:23:26.699634959 -0800 l/

查看第一层 第二层 第三层目录结构

root@no1:/var/lib/docker/overlay2# ll a6350774f0c5a4c89f850252180930a48ae28ca37c33ac3a2ba39585bb3c2c42/
total 8.0K
-rw-r--r-- 1 root root 26 2017-12-13 22:03:57.063074124 -0800 link
drwxr-xr-x 21 root root 4.0K 2017-12-13 22:03:59.027035468 -0800 diff/ ##挂载点
root@no1:/var/lib/docker/overlay2# ll 43a794c7d4fc61414cceedb2914026f09c9228397a885fb2d040278d6a1b5856/
total 20K
drwx------ 2 root root 4.0K 2017-12-13 22:04:00.471007047 -0800 work/
drwx------ 2 root root 4.0K 2017-12-13 22:04:00.471007047 -0800 merged/
-rw-r--r-- 1 root root 28 2017-12-13 22:04:00.471007047 -0800 lower
-rw-r--r-- 1 root root 26 2017-12-13 22:04:00.471007047 -0800 link
drwxr-xr-x 6 root root 4.0K 2017-12-13 22:04:00.503006417 -0800 diff/ root@no1:/var/lib/docker/overlay2# ll 33a4e0217cb0342f024ee2f093ab7188433b2b231c75999848bd2d36eb501255/
total 20K
drwx------ 2 root root 4.0K 2017-12-13 22:04:00.511006259 -0800 work/
drwx------ 2 root root 4.0K 2017-12-13 22:04:00.511006259 -0800 merged/
-rw-r--r-- 1 root root 57 2017-12-13 22:04:00.511006259 -0800 lower
-rw-r--r-- 1 root root 26 2017-12-13 22:04:00.511006259 -0800 link
drwxr-xr-x 3 root root 4.0K 2017-12-13 22:04:00.531005866 -0800 diff/

在看看第二层和第三层的lower文件-逐递加

root@no1:/var/lib/docker/overlay2#
root@no1:/var/lib/docker/overlay2# cat a6350774f0c5a4c89f850252180930a48ae28ca37c33ac3a2ba39585bb3c2c42/l^C
root@no1:/var/lib/docker/overlay2# cat 43a794c7d4fc61414cceedb2914026f09c9228397a885fb2d040278d6a1b5856/lower
l/UZH33GFG3GMRJCYLAIHJQKEUIN
root@no1:/var/lib/docker/overlay2# cat 33a4e0217cb0342f024ee2f093ab7188433b2b231c75999848bd2d36eb501255/lower
l/QQIYMV3GOYXUTDN6GAAKSM7ZFL:l/UZH33GFG3GMRJCYLAIHJQKEUIN

测试:

Ubuntu16安装的docker



另一台是centos7上安装的docker

观察挂载

lowerdir
upperdir
workdir 查看挂载方式
mount|grep overlay overlay: 只挂载一层,其他层通过最高层通过硬连接形式共享(增加了磁盘inode的负担)
/var/lib/docker/overlay/ae6ca8bdaf74720c26b4d780d0c7837e487505c410efb5b9d891bb78796e8e0f/merged type overlay
(rw,relatime,
lowerdir=/var/lib/docker/overlay/632707d3098b737da98ada134fb2cdb8c18c6492dabc9fabbc08e664afc23b8e/root,
upperdir=/var/lib/docker/overlay/ae6ca8bdaf74720c26b4d780d0c7837e487505c410efb5b9d891bb78796e8e0f/upper,
workdir=/var/lib/docker/overlay/ae6ca8bdaf74720c26b4d780d0c7837e487505c410efb5b9d891bb78796e8e0f/work) overlay2: 逐层挂载
(rw,relatime,
lowerdir=/var/lib/docker/overlay2/l/AQLAUEDWASUZFK6WMTNMV67AEF:/var/lib/docker/overlay2/l/KWJWIYWDTPZCGVRASSRIVREKMN:/var/lib/docker/overlay2/l/ZYQCFR4K5ZI5GDFJXHINZJTNF2:/var/lib/docker/overlay2/l/EY6ZNSFU3IGYHG3ALKBRVDWMX2:/var/lib/docker/overlay2/l/QQIYMV3GOYXUTDN6GAAKSM7ZFL:/var/lib/docker/overlay2/l/UZH33GFG3GMRJCYLAIHJQKEUIN,
upperdir=/var/lib/docker/overlay2/2d3b5711d26366b06283c1e8632d5065b9b6ba2e027b7cdd351a2d89b3810dfd/diff,
workdir=/var/lib/docker/overlay2/2d3b5711d26366b06283c1e8632d5065b9b6ba2e027b7cdd351a2d89b3810dfd/work)

[docker]存储驱动overlay和overlay2的区别的更多相关文章

  1. Docker存储驱动Device Mapper,Overlay,AUFS

    Docker存储驱动之Device Mapper简介 - BookShu - 博客园https://www.cnblogs.com/styshoo/p/6528762.html Docker存储驱动之 ...

  2. Docker存储驱动之OverlayFS简介

    简介 OverlayFS是一种和AUFS很类似的文件系统,与AUFS相比,OverlayFS有以下特性: 1) 更简单地设计: 2) 从3.18开始,就进入了Linux内核主线: 3) 可能更快一些. ...

  3. Docker存储驱动之总览

    简介 本文会介绍Docker存储驱动的特性,别列出现在已经支持的存储驱动,最后,会介绍如果选型适合你的存储驱动. 可插拔的存储驱动架构 Docker的存储驱动架构是可插拔的,可以让你很方便的将适合你环 ...

  4. 聊一聊docker存储驱动

    目录 镜像的分层特性 容器读写层的工作原理 写时复制 用时配置 Docker存储驱动 AUFS OverlayFS Devicemapper 常用存储驱动对比 AUFS VS OverlayFS Ov ...

  5. overlay和overlay2的区别

    docker作为一个容器平台,它有一套自己的存储系统.它支持的driver有overlay,overlay2, aufs等等. 这篇文章主要分析overlay和overlay2的区别. overlay ...

  6. DOCKER学习_006:Docker存储驱动

    一 镜像的分层特性 在说docker的文件系统之前,我们需要先想清楚一个问题.我们知道docker的启动是依赖于image,docker在启动之前,需要先拉取image,然后启动.多个容器可以使用同一 ...

  7. Docker存储驱动之Device Mapper简介

    Device Mapper是一个基于kernel的框架,它增强了很多Linux上的高级卷管理技术.Docker的devicemapper驱动在镜像和容器管理上,利用了该框架的超配和快照功能.为了区别, ...

  8. docker 存储驱动(storage driver)知识总结

    http://www.sohu.com/a/101016494_116235 一,先看docker镜像是如何构建和存储. 下面是ubuntu:15.04的镜像分层.一共是4层,每一层都由一些只读并且描 ...

  9. 有容云-【原理】Docker存储驱动之AUFS

    编者按:今天聊一聊Docker的Image(镜像)与Container(容器)的存储以及存储驱动之AUFS.   Docker存储驱动简介 Docker内置多种存储驱动,每种存储驱动都是基于Linux ...

随机推荐

  1. 20.custom自定义线程池

    自定义线程池 1.若Executors工厂类无法满足需求,可以自己使用工厂类创建线程池,底层都是使用了); ThreadPoolExecutor threadPoolExecutor = new Th ...

  2. 使用Proxmark3进行MIFARE Classic卡的安全测试

    使用Proxmark3进行MIFARE Classic卡的安全测试   Proxmark3的MIFARE安全测试是很多朋友都非常重视的一部分,所以我们特地以这个部分进行介绍,告诉大家如何当你完成前期操 ...

  3. 关于Predicate<T>委托

    Predicate<T>委托在.NET类类库中经常出现,此委托的定义如下: public delegatebool Predicate<T>(T obj); 从其定义可以看到, ...

  4. GPGPU OpenCL编程步骤与简单实例

    http://www.cnblogs.com/xudong-bupt/p/3582780.html  1.OpenCL概念 OpenCL是一个为异构平台编写程序的框架,此异构平台可由CPU.GPU或其 ...

  5. python基础之模块 序列化

    什么是序列化(picking)? 我们把变量从内存中变成可存储或传输的过程称之为序列化. 序列化之后,就可以把序列化后的内容写入磁盘,或者通过网络传输到别的机器上. 反过来,把变量内容从序列化的对象重 ...

  6. STM32+IAP方案 实现网络升级应用固件

    关注了这个概念有些日子了,这段时间总算有机会实战==网络升级应用固件,这里记录下遇到的问题,及解决方案. 原理与网上流传的串口作为传输手段 一致:不同之处,无非我这里使用了网络设备传输.==(lwip ...

  7. hadoop文件系统与I/O流

    本文地址:http://www.cnblogs.com/archimedes/p/hadoop-filesystem-io.html,转载请注明源地址. hadoop借鉴了Linux虚拟文件系统的概念 ...

  8. Elasticsearch入门基础(1)

    基础概念 Elasticsearch有几个核心概念.从一开始理解这些概念会对整个学习过程有莫大的帮助. 接近实时(NRT)         Elasticsearch是一个接近实时的搜索平台.这意味着 ...

  9. 10分钟,利用canvas画一个小的loading界面

    首先利用定义下canvas得样式 <canvas width="1024" height="720" id="canvas" styl ...

  10. T-SQL 之 运算符

    1.算术运算符 [1] +:加 [2] -:减 [3] *:乘 [4] /:除 [5] %:模除取余 2.位运算符 [1] &(与,and): 按位逻辑与运算 [2] |(或,or): 按位逻 ...