Docker:dockerfile镜像的分层 [九]
一、docker镜像的分层
1、图像呈现

2、命令呈现
[root@oldboy kod]# docker image history kod:v1
IMAGE CREATED CREATED BY SIZE COMMENT
25f70cb6dec6 42 minutes ago /bin/sh -c #(nop) CMD ["/bin/bash" "/init.s… 0B
2c08007784ad 42 minutes ago /bin/sh -c #(nop) EXPOSE 80 0B
beea547494c2 42 minutes ago /bin/sh -c #(nop) ADD file:9fded30cd1519b8d3… 70B
0accf7a7f519 42 minutes ago /bin/sh -c chmod -R 777 /var/www/html 46.2MB
c8431307a174 42 minutes ago /bin/sh -c unzip kodexplorer4.37.zip 32.4MB
3c55f532dca0 42 minutes ago /bin/sh -c #(nop) COPY file:c0ede8b6cbebd456… 13.8MB
138f23faf452 2 hours ago /bin/sh -c #(nop) WORKDIR /var/www/html 0B
84e186c5a38f 2 hours ago /bin/sh -c yum install httpd php php-cli unz… 124MB
e88c611d16a0 3 months ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0B
<missing> 3 months ago /bin/sh -c #(nop) LABEL name=CentOS Base Im… 0B
<missing> 3 months ago /bin/sh -c #(nop) ADD file:b99efdfca7b4df4ef… 195MB
二、镜像分层的好处
1、分层的好处:
共享资源,节省资源
有多个镜像都从相同的 base 镜像构建而来,那么 Docker Host 只需在磁盘上保存一份 base 镜像;同时内存中也只需加载一份 base 镜像,就可以为所有容器服务了
2、在构建中的截图

三、dockerfile中run的原理
1、目录层级呈现
[root@oldboy layerdb]# pwd
/var/lib/docker/image/overlay2/layerdb
[root@oldboy layerdb]# tree
.
├── mounts
│?? └── f2e286474958ee74a06328fadc4a1839a09bb4fdb8ed1f66c649881b6cff5494
│?? ├── init-id
│?? ├── mount-id
│?? └── parent
├── sha256
│?? ├── 002679450ec12ca6a1d3bc0ef546ba7f85473cc636dbd4d9b903f09f674f7cc6
│?? │?? ├── cache-id
│?? │?? ├── diff
│?? │?? ├── parent
│?? │?? ├── size
│?? │?? └── tar-split.json.gz
│?? ├── 6a7858bdc1779c5035b615ac39738d0f40a147280f90241829c73af1779ff248
│?? │?? ├── cache-id
│?? │?? ├── diff
│?? │?? ├── parent
│?? │?? ├── size
│?? │?? └── tar-split.json.gz
│?? ├── 98ce75898ea99aa8be599a25310488bf433b5289ca684180c0cdea545f29f67a
│?? │?? ├── cache-id
│?? │?? ├── diff
│?? │?? ├── parent
│?? │?? ├── size
│?? │?? └── tar-split.json.gz
│?? ├── 9d114c8578095cdd3c1660928c3cca65cd7c241b66fd2a426a3a52845b5cd4ca
│?? │?? ├── cache-id
│?? │?? ├── diff
│?? │?? ├── parent
│?? │?? ├── size
│?? │?? └── tar-split.json.gz
│?? ├── b5e11aae8a8e8fab750bd384393aafa379e21c57c398f5dd4980cd01fcf55b9e
│?? │?? ├── cache-id
│?? │?? ├── diff
│?? │?? ├── size
│?? │?? └── tar-split.json.gz
│?? └── fbda96ca5467cc519d850984c8f3df6973c5ea9a0f7b22ac516576adcc0a5137
│?? ├── cache-id
│?? ├── diff
│?? ├── parent
│?? ├── size
│?? └── tar-split.json.gz
└── tmp
2、截图呈现

四、docker的简单总结

Docker:dockerfile镜像的分层 [九]的更多相关文章
- Docker dockerfile镜像编码
一. 大多数docker基础镜像使用locale查看编码,发现默认编码都是POSIX,这会导致中文乱码.解决方法如下: 二.首先使用locale -a查看容器所有语言环境 三.dockerfile中加 ...
- Dockerfile 自动制作 Docker 镜像(三)—— 镜像的分层与 Dockerfile 的优化
Dockerfile 自动制作 Docker 镜像(三)-- 镜像的分层与 Dockerfile 的优化 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云 ...
- docker学习系列(三):docker镜像的分层结构
docker的镜像分层 docker里的镜像绝大部分都是在别的镜像的基础上去进行创建的,也就是使用镜像的分层结构. 实验 比如说使用dockerfile去创建一个最简单的hello镜像.创建好对应的d ...
- Docker Dockerfile 定制镜像(转)
转自: https://yeasy.gitbooks.io/docker_practice/ 及 https://blog.csdn.net/wo18237095579/article/details ...
- docker镜像的分层结构三
docker的镜像分层 docker里的镜像绝大部分都是在别的镜像的基础上去进行创建的,也就是使用镜像的分层结构. 实验 比如说使用dockerfile去创建一个最简单的hello镜像.创建好对应的d ...
- Docker Dockerfile 定制镜像
使用 Dockerfile 定制镜像 镜像的定制实际上就是定制每一层所添加的配置.文件.如果我们可以把每一层修改.安装.构建.操作的命令都写入一个脚本,用这个脚本来构建.定制镜像,那么无法重复的问题 ...
- 庐山真面目之九微服务架构 NetCore 基于 Docker 基础镜像和挂载文件部署
庐山真面目之九微服务架构 NetCore 基于 Docker 基础镜像和挂载文件部署 一.简介 我们在上一篇文章<庐山真面目之八微服务架构 NetCore 基于 Dockerfile ...
- Docker源码分析(九):Docker镜像
1.前言 回首过去的2014年,大家可以看到Docker在全球刮起了一阵又一阵的“容器风”,工业界对Docker的探索与实践更是一波高过一波.在如今的2015年以及未来,Docker似乎并不会像其他昙 ...
- docker基础_docker镜像与分层
docker镜像与分层 docker镜像由一些松耦合的制度镜像层组成 docker负责堆叠这些镜像层并将它们表示为单个统一的对象 当 docker image pull ubuntu:latest 时 ...
随机推荐
- 【iOS开发】Alamofire框架的使用二 高级用法
Alamofire是在URLSession和URL加载系统的基础上写的.所以,为了更好地学习这个框架,建议先熟悉下列几个底层网络协议栈: URL Loading System Programming ...
- 安卓(Android)开发基础知识
.aar文件 .aar是一种压缩文件,和.jar类似,不过它可以包含资源文件,例如图片.drawable.xml资源 .jar文件 在软件领域,JAR文件(Java归档,英语:Java ARchive ...
- 浅谈百度地图API的坑
我们可以使用百度地图生成器生成地图码(功能开发 还是使用官方文档吧) 注意百度地图坑 1.地图和我们申请的ak码版本问题 (解决方案:推荐大家使用2.0) 远程链接:<script type=& ...
- LeetCode算法题-License Key Formatting(Java实现)
这是悦乐书的第241次更新,第254篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第108题(顺位题号是482).您将获得一个表示为字符串S的许可证密钥,该字符串仅包含字 ...
- eclipse弃坑记第一篇之在idea上配置Tomcat环境并创建Javaweb项目的详细步骤原创
IntelliJ IDEA是一款功能强大的开发工具,在代码自动提示.重构.J2EE支持.各类版本工具(如git.svn.github).maven等方面都有很好的应用. IntelliJ IDEA有免 ...
- Windows 版 SourceTree 免登录跳过初始设置的方法
首先去官网下载最新的sourcetree安装包,点击打开下载地址. 下载完成后安装,等到他自启动开始提示你登录的时候,打开“我的电脑(此电脑)”,在最上边的输入栏输入%LocalAppData%\At ...
- AI deeplab
参考链接: https://arxiv.org/pdf/1412.7062v3.pdf
- centos6.8 配置mysql赋予mysql远程连接权限
1.关掉防火墙 2.检查3306端口是否开放 3.修改用户用户权限 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '您的数据库密码' ...
- jenkins集成python时出现"Non-ASCII character '\xe6' in file"错误解决方法
我的问题: 使用python3.5,在Linux环境下手动执行python文件时不报错,但是用jenkins自动执行时就报"Non-ASCII character '\xe6' in fil ...
- SpringCloud学习笔记:SpringCloud简介(1)
1. 微服务 微服务具有的特点: ◊ 按照业务划分服务 ◊ 每个微服务都有独立的基础组件,如:数据库.缓存等,且运行在独立的进程中: ◊ 微服务之间的通讯通过HTTP协议或者消息组件,具有容错能力: ...
