17、Docker 优化与持续集成实践

Docker 优化与持续集成实践

1. 大镜像的优势与优化

在 Docker 应用中,通常认为小镜像更节省磁盘空间和网络带宽,但实际上大的单体镜像也有其独特优势。

1.1 移除未使用文件优化镜像大小

可以通过以下步骤优化镜像大小:
- 获得运行期间未访问的所有文件列表。
- 移除所有未访问的文件。

接着可以扁平化这个容器来创建新镜像并测试其是否仍能正常工作:

$ ID=$(docker export reduce | docker import -)
$ docker tag $ID smaller
$ docker images | grep smaller

示例中,镜像大小从 96 MB 减少到约 6.5 MB,且功能正常。不过这种方法有风险,对于关键业务应用,可能会误删后续需要的文件。如果担心破坏镜像,可以查看 /tmp/candidates.txt 文件获取未使用的大文件列表,然后删除确定不需要的大文件。

1.2 创建大单体基础镜像

创建组织通用的大型单体基础镜像可以节省磁盘空间和网络带宽。Docker 在容器运行时使用写时复制机制,多个基于同一基础镜像的容器启动时,仅需少量额外磁盘空间。

与多个不同的小镜像相比,一个包含所有所需内容的大单体镜像可能更节省空间。例如,在一个服务器上,如果有多个不同的小镜像,会存在核心应用的重复,浪费空间和带宽;而使用一个大的企业镜像和少量特定项目的小层增量,则能显著降低总空间和带宽使用。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值