FastBuild: Accelerating Docker Image Building for Efficient Development and Deployment of Container Zhuo Huang1, Song Wu1∗, Song Jiang2 and Hai Jin1 1National Engineering Research Center for Big Data Technology and System 1Services Computing Technology and System Lab, Cluster and Grid Computing Lab 1School of Computer Science and Technology, Huazhong University of Science and Technology, Wuhan, 430074, China 2Department of Computer Science and Engineering, University of Texas at Arlington, Texas 76019, U.S 1 fhuangzhuo, wusong,
[email protected] [email protected] Abstract—Docker containers have been increasingly adopted is especially desired in a DevOps environment where frequent on various computing platforms to provide a lightweight vir- deployments occur. In the meantime, DevOps also requires tualized execution environment. Compared to virtual machines, repeated adjustments and testing of container images. An this technology can often reduce the launch time from a few minutes to less than 10 seconds, assuming the Docker image image is often iteratively re-built before and after a container is has been locally available. However, Docker images are highly launched from it. To support flexible customization of images, customizable, and are mostly built at runtime from a remote Docker adopts a mechanism to build images at the client side. base image by running instructions in a script (the Dockerfile). An image can be built by running a Dockerfile, which is During the instruction execution, a large number of input files a script containing instructions for building an image, from may have to be retrieved via the Internet. The image building may be an iterative process as one may need to repeatedly modify a base image that provides basic and highly customizable the Dockerfile until a desired image composition is received.