The impact of base image selection on the energy efficiency of containerized applications in Docker

More Info
expand_more

Abstract

Containerization has become a fundamental component of software development and the continuous integration and continuous delivery (CI/CD) pipeline. However, the energy overhead of containerization solutions such as Docker results not only in higher costs but also has environmental consequences. Currently, the energy efficiency of containers is often neglected, since developers mainly focus on small image size and time efficiency. Furthermore, there is also a lack of understanding about the impact of base images on the container during runtime. Therefore, the objective of this thesis is to assess the impact of base image selection on the energy efficiency of containerized workloads. This is done by running an empirical study, in which we conduct experiments with a diverse set of real-world workloads and base images. The results of this study show that the base image can have a significant impact on the energy efficiency of the container. However, the magnitude of this impact in practice depends on the workload. For some workloads (i.e. databases) this impact is more significant in practice than for others (i.e. gaming servers). While there is no single best or worst image across all workloads, Alpine is often the least energy-efficient option. Furthermore, the execution time of the container is only correlated to the energy consumption for CPU-intensive workloads. Therefore, besides image size and time efficiency, it is important to consider energy efficiency in the selection criteria as well when considering sustainable practices in software engineering.