2025年oracle doc(oracle docker 镜像)

oracle doc(oracle docker 镜像)由于最近在发布的时候发现 docker 镜像体积变得越来越大 导致整个打包发布流程变得非常耗时了 所以又接到一个差事 优化最终镜像体积 顺便也记录一下 docker 镜像体积优化的一些步骤 大概步骤可以分为以下几个步骤 重做基础镜像 因为原基础镜像提交就已经占用了 500M 所以计划使用 alpine 重新制作 优化 Dockerfile 文件 合并一些指令来减小镜像层数 删除一些临时文件等



​ 由于最近在发布的时候发现docker镜像体积变得越来越大,导致整个打包发布流程变得非常耗时了。所以又接到一个差事,优化最终镜像体积。顺便也记录一下docker镜像体积优化的一些步骤。

大概步骤可以分为以下几个步骤:

  • 重做基础镜像,因为原基础镜像提交就已经占用了500M,所以计划使用alpine重新制作。
  • 优化Dockerfile文件,合并一些指令来减小镜像层数,删除一些临时文件等。
  • 最后是对基于重制的基础镜像打包发布镜像后进行镜像层数压缩(docker-squash)。
一、重做基础镜像

文件目录如下:

1730446104208-2024-11-115:28:25.png

我这基础镜像需要安装 jdk8、 python2、系统级cron组件(supercronic)

 

使用docker build 命令镜像制作

 

效果还不错只有200M 比之前的小了快300M

image-20241101154056188-2024-11-115:41:42.png

二、Dockerfile优化

我们自己的不方便展示主要就是

  • 使用上边新的基础镜像。

  • 优化指令减少层数。

  • 删除临时文件。

三、压缩镜像
1、docker-squash是什么?
  1. 定义
    • 是一个用于压缩 Docker 镜像的工具。Docker 镜像是由一系列的层(layers)组成的,在构建和使用过程中,这些层会逐渐累积。可以将这些多层的 Docker 镜像压缩成一个单一层的镜像,从而减小镜像的大小。
  2. 工作原理
    • 当构建 Docker 镜像时,每一个指令(如、等)都会在基础镜像之上创建一个新的层。随着时间的推移和构建步骤的增加,镜像会包含许多层。通过将这些层合并,消除了层与层之间的冗余部分。例如,如果一个镜像有多个层,其中有些层可能包含相同的文件或者依赖,会把这些重复的部分整合,生成一个更紧凑的镜像。
2、安装使用
 

然后直接使用,其他参数可以查阅一下文档。

docker-squash -t 新镜像名称 原镜像名称

以下是压缩结果 压缩了36.9% 一下减少600M 效果还是非常不错的。

1730447743812-2024-11-115:55:44.png

效果不错这下又可以交差,又能开开心心划水。

编程小号
上一篇 2025-01-25 14:21
下一篇 2025-03-06 16:40

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/41414.html