返回
Fixing Dockerfile smells: an empirical study
DOI:10.1007/s10664-024-10471-7.png)
摘要
En 中文
Docker is the de facto standard for software containerization. A Dockerfile contains the requirements to build a Docker image containing a target application. There are several best practice rules for writing Dockerfiles, but the developers do not always follow them. Violations of such practices, known as Dockerfile smells, can negatively impact the reliability and performance of Docker images. Previous studies showed that Dockerfile smells are widely diffused, and there is a lack of automatic tools that support developers in fixing them. However, it is still unclear what Dockerfile smells get fixed by developers and to what extent developers would be willing to fix smells in the first place. The aim of our study is twofold. First, we want to understand what Dockerfiles smells receive more attention from developers, i.e., are fixed more frequently in the history of open-source projects. Second, we want to check if developers are willing to accept changes aimed at fixing Dockerfile smells (e.g., generated by an automated tool), to understand if they care about them. We evaluated the survivability of Dockerfile smells from a total of 53,456 unique Dockerfiles, where we manually validated a large sample of smell-removing commits to understand (i) if developers performed the change with the intention of removing bad practices, and (ii) if they were aware of the removed smell. In the second part, we used a rule-based tool to automatically fix Dockerfile smells. Then, we proposed such fixes to developers via pull requests. Finally, we quantitatively and qualitatively evaluated the outcome after a monitoring period of more than 7 months. The results of our study showed that most developers pay more attention to changes aimed at improving the performance of Dockerfiles (image size and build time). Moreover, they are willing to accept the fixes for the most common smells, with some exceptions (e.g., missing version pinning for OS packages).
Keyword:
Dockerfile smells
Empirical software engineering
Software evolution
期刊
IF:
3.6
论文数:
2.0K
被引数:
5.3K
机构
引用论文
?-1,4-Glucosidase activity in infertile oligoasthenozoospermic men with and without varicocele
Andrologia
IF0
DSM-5 Field Trials in the United States and Canada, Part II: Test-Retest Reliability of Selected Categorical Diagnoses在美国和加拿大进行的DSM-5现场试验,第二部分: 选定分类诊断的重测可靠性
Characterizing the Occurrence of Dockerfile Smells in Open-Source Software: An Empirical Study表征开源软件中Dockerfile气味的发生: 一项实证研究
IEEE ACCESS
IF3.6

