Docker 坏味对镜像大小影响的实证研究
软件工程
2024-03-13 v2
摘要
Docker 作为一种被广泛采用的应用打包与部署工具,利用 Dockerfile 来构建镜像。然而,创建最优的 Dockerfile 可能具有挑战性,通常会导致“Docker 坏味”或偏离最佳实践。本文研究了 14 种 Docker 坏味对 Docker 镜像大小的影响。为了评估 Docker 坏味对大小的影响,我们从 11 313 个开源 Dockerfile 中识别并修复了 16 145 个 Docker 坏味。我们观察到,这些坏味导致每个有坏味的镜像平均增加 48.06 MB (4.6%)。根据坏味类型的不同,大小增加可达 10%,而在某些特定情况下,坏味可占镜像大小的 89%。有趣的是,影响最大的坏味与包管理器相关,这类坏味较为常见且相对容易修复。为了收集开发者关于 Docker 坏味对大小影响的看法,我们提交了 34 个修复坏味的拉取请求,并向开发者报告了其对 Docker 镜像的影响。26/34 (76.5%) 的拉取请求已被合并,共节省了 3.46 GB (16.4%)。开发者的评论表明,即使拉取请求被拒绝,他们对解决这些 Docker 坏味也表现出积极的兴趣。
引用
@article{arxiv.2312.13888,
title = {Empirical Study of the Docker Smells Impact on the Image Size},
author = {Thomas Durieux},
journal= {arXiv preprint arXiv:2312.13888},
year = {2024}
}
备注
Accepted at ICSE'24. arXiv admin note: text overlap with arXiv:2302.01707