中文

基于源代码数据依赖分析的有效 Docker 镜像削减方法

软件工程 2025-01-08 v1

摘要

容器化是当前软件开发的主流方式,使软件能够在无需额外运行环境配置的情况下跨平台使用。然而,许多开发者创建的镜像是冗余的,包含不必要的代码、软件包和组件。这种过量不仅导致臃肿的镜像难以传输和存储,也增加了攻击面,使其更容易受到安全威胁。因此,镜像削减逐渐成为一个重要的兴趣领域。然而,现有的镜像削减技术面临着挑战,特别是关于从项目代码中完整提取运行环境依赖性的问题。在本文中,我们提出了一种名为 δ\delta-SCALPEL 的新型镜像削减模型。该模型采用静态数据依赖分析来提取项目代码的环境依赖性,并利用一种名为 command linked list 的数据结构来建模镜像的文件系统。我们选取 20 个 NPM 项目和两个官方 Docker Hub 镜像构建了用于评估 δ\delta-SCALPEL 的数据集。评估结果表明,δ\delta-SCALPEL 能在确保这些项目正常运行的前提下,将镜像大小降低最高可达 61.4%。

关键词

引用

@article{arxiv.2501.03736,
  title  = {An Effective Docker Image Slimming Approach Based on Source Code Data Dependency Analysis},
  author = {Jiaxuan Han and Cheng Huang and Jiayong Liu and Tianwei Zhang},
  journal= {arXiv preprint arXiv:2501.03736},
  year   = {2025}
}

备注

17 pages, 8 figures