Minimizing Images of Docker Container Root File Systems (Минимизация образов корневых файловых систем Docker контейнеров)

Irina Nikolaeva, Ivan Gankevich

Containers is a tool which is often used in developmentand testing applications because they are easy-to-use and lightweight. The container is built based on an image, which is a template for the container and a way to transmit it over the network. Images can be up to several gigabytes in size. Thus, if you need to transfer the large application container over the network, or the available memory is scarce (for example, when developing IoT systems), it is necessary to minimize the size of the image. Container images are built on top of the Linux kernel. For interactive work with containers, they include instructions and files that the application never works with inside the container. The applications that will be launched in the container and their number are known in advance, so you can use Linux debugging tools to find out which files are used by applications in the container, and which can be excluded from it. This is how the Chainsaw application works. This paper presents the results of a study of several different Docker container images. For some application we obtained threefold decrease of the image size;also, we found that the size of the reduced image is significantly affected by the base image and the programming language in which the application that runs inside the container is written.

  title={Minimizing Images of Docker Container Root File Systems (Минимизация образов корневых файловых систем Docker контейнеров)},
  author={Irina Nikolaeva and Ivan Gankevich},
  publisher={RWTH Aahen University},
  booktitle={Proceedings of GRID'21},
  series={CEUR Workshop Proceedings},
  editor={Vladimir Korenkov and Andrey Nechaevskiy and Tatiana Zaikina},

Publication: Proceedings of GRID'21
Publisher: RWTH Aahen University