背景

在构建Docker容器时,应该尽量想办法获得体积更小的镜像,因为传输和部署体积较小的镜像速度更快。
但RUN语句总是会创建一个新层,而且在生成镜像之前还需要使用很多中间文件,在这种情况下,该如何获得体积更小的镜像呢?

docker image形成的示例

示例:Dockerfile

FROM Ubuntu:14.04
ADD run.sh /
VOLUME /data
CMD [“./run.sh”]

上面的dockerfile的行为:
基于Ubuntu:14.04系统将run.sh放在根目录下,设置卷挂载点,然后在image启动的时候run脚本run.sh。下图就是形成的docker image:

通过上面的示例可以看到,docker镜像的生成过程。

docker镜像的压缩和优化

  1. 选择一个较小的原镜像,也就是FROM后面的那个镜像尽量要小
  2. 选择多阶段构建镜像,最终的镜像不包含编译器和整个编译工具链
  3. 第一阶段指定WORKDIR,第二阶段使用绝对路径拷贝文件
  4. 使用静态库替代动态库
  5. 根据实际情况对Dockerfile中的层进行合并,比如将多条RUN命令合并成一条

Docker镜像压缩和优化相关推荐

  1. Docker镜像压缩与优化

    现如今docker如此受人追捧,主要是因为它的轻量化.可以快速部署以及资源的利用.但是一个docker images质量的好与坏,主要取决于Dockerfile编写的质量.同样功能的镜像,但是不同的D ...

  2. docker镜像创建与优化

    1 . 创建镜像 有两种方法构建镜像: docker commit :将运行的容器保存成镜像 Dockerfile:自动构建 使用docker commit 创建镜像分为三步: 运行容器 修改容器 将 ...

  3. docker 镜像压缩 docker-squash

    docker build 通过Dockerfile 制作镜像会根据命令形成一层层layer,这样造成文件重复,镜像体积比较大:为了缩小层的数量及其大小,能够像压缩git commit一样压缩layer ...

  4. python docker 镜像过大_Docker镜像压缩与优化操作

    现如今docker如此受人追捧,主要是因为它的轻量化.可以快速部署以及资源的利用.但是一个docker images质量的好与坏,主要取决于dockerfile编写的质量.同样功能的镜像,但是不同的d ...

  5. 前端 Docker 镜像体积优化

    如果 2019 年技术圈有十大流行词,容器化肯定占有一席之地,随着 Docker 的风靡,前端领域应用到 Docker 的场景也越来越多,本文主要来讲述下开源的分布式图数据库 Nebula Graph ...

  6. 记一次,Docker镜像1G多精简至300+M的过程

    记一次,Docker镜像1G多精简至300+M的过程 一.业务场景描述 二.Docker时区不一致,相差8小时 三.通过Docker发布的服务上传文件上传不上去 四.上传的图片带水印,水印中包含的字体 ...

  7. dockhub 好用的镜像_玩转docker镜像和镜像构建

    摘要 本文从个人的角度,讲述对于docker镜像和镜像构建的一些实践经验.主要内容包括利用docker hub进行在线编译,下载镜像,dind的实践,对于镜像的一些思考等.本文是对当时微信分享内容的一 ...

  8. 精简压缩优化 Docker 镜像几百MB

    转载:http://www.dockerinfo.net/3328.html 介绍 前段时间网易蜂巢曾经推出蜂巢 Logo T恤,用的正是 Docker 镜像制作,最神奇的是,它最终的镜像大小只有 5 ...

  9. Docker容器(配置+镜像建立及优化+镜像加速器制作)

    一.docker简介 Docker是管理容器的引擎. Docker为应用打包.部署平台,而非单纯的虚拟化技术 1.VM vs Container 2.传统虚拟机和容器的技术对比 3.容器是如何工作的 ...

最新文章

  1. 一图看懂新一代人工智能知识体系大全
  2. python正规教育机构-长沙python培训机构哪家好
  3. 交互输入与for语句
  4. 4. 分类的线性模型
  5. Hibernate中的HQL的基本常用小例子,单表查询与多表查询
  6. Nginx大规模并发原理
  7. 利用C语言中的setjmp和longjmp,来实现异常捕获和协程
  8. 【转】ORACLE_SID、INSTANCE_NAME、DB_NAME
  9. ruby on rails 之图片压缩
  10. 用windbg分析minidump
  11. 福建师范网络教育应用计算机,福建师范大学网络教育计算机应用基础课程期末考核答案.docx...
  12. rpg存档修改网站_Switch上国宝级欧美版RPG游戏推荐
  13. 智能车四轮组打工日记(二)——单电机驱动硬件设计
  14. Testbed单元测试
  15. stm32实用技巧:JLINK接口定义和使用JTAG或SW下载程序
  16. 坚果手机 误进FastBoot Mode解决方案
  17. RabbitMQ实现即时通讯
  18. Lempel-Ziv压缩算法
  19. 水仙花数(所有自幂数)的实现详解-C语言
  20. UGUI Text行首标点处理

热门文章

  1. STM32F103RBT6 串口1正常接收,发送过程也很正常,但TXD引脚没有波形
  2. docker部署zabbix_agent
  3. 涂鸦智能设备接入homeassistant
  4. 智力题:一次测试找出1000瓶酒中的唯一一瓶毒酒
  5. BlackSquid恶意软件分析:利用8个臭名昭著的漏洞攻击服务器,并投放挖矿恶意软件
  6. 2015桐庐年会--奔跑吧,骚年
  7. 【python实战】---- 30行代码提取个人值班表
  8. 没有找到libgcc_s_sjlj-1.dll
  9. el-tooltip的使用(根据条件控制显示)
  10. table中英文值显示其对应中文