Return
Automatic Repair Method for Dockerfile Build Errors: Extracting Dependencies between Build Error-Inducing Instructions Based on Frequent Subtree Mining
DOI:10.1587/transinf.2025MPP0005.png)
Abstract
En
Container-based virtualization enables fast and lightweight execution of independent virtual environments. Docker, the de facto standard for container-based virtualization software, has been widely used in recent years. In Docker, virtual environments are created by building a text file called a Dockerfile. However, docker builds can cause build errors, especially due to complex dependencies between Dockerfile instructions. To address this issue, this study proposes an automatic build error repair method focusing on dependencies. The proposed method first identifies dependencies that induce build errors and then automatically repairs them. For identifying dependencies that induce build errors, sequential pattern mining is applied to Dockerfiles in the dataset. The build error rate of Dockerfiles containing the obtained sequential patterns is then calculated, and Dockerfiles with a high build error rate are treated as repair candidates. Next, repair rules are created for the identified candidates, and an automatic build error repair process is applied. As a result, 4,693 dependencies that induce build errors were extracted, and 28 repair rules were generated based on the extracted dependencies. Among the 4,554 Dockerfiles in the dataset, the proposed method successfully repaired 328 files, which is 25.7% more than the baseline method so called Shipwright. The proposed method also repaired 195 build errors that Shipwright could not address. Furthermore, a comparison between the repairs performed by the proposed method and actual project changes showed that 65 out of 192 (33.5%) collected project modifications matched the repairs made by the proposed method.
Keywords:
docker
containerization
auto repair
subtree mining
Journal
I
IF:
0.8
Papers:
171
Citations:
2.3K


