Utilizing Docker Containers for Reproducible Builds and Scalable Web Application Deployments
Pages : 661-668, DOI: https://doi.org/10.14741/ijcet/v.11.6.10
Download PDF
Abstract
Docker, developed and released in 2013 by Docker Inc. under the Apache 2.0 license, is an open-source container engine. Due to their significance in infrastructure virtualisation, containers have a special position in the annals of computing. This paper provides a complete discussion of Docker technology and how it has been applied in the current software development cycle, specifically in containerisation, to arrive at a highly efficient, repeatable, and portable application deployment method. Docker is an application container platform that packs code and dependencies together to run everywhere at scale. This capability is critical in the DevOps and CI/CD settings to cut down on deployment problems while using up less of the software development life cycle. Docker Essentials–Docker engine, Docker client-server, Docker images, Docker containers, and the role of these derivatives in constructing applications inside isolated containers are explained. Further, Docker utility in the attainable scalabilities is followed by frames such as Docker Swarm and Kubernetes that address the idea of horizontal scaling, Load Balancing, and features like microservices. The paper also revisits basic Docker tools and practices like Docker Compose and CI/CD for easier management of containers. A literature review addresses current research, emphasising gaps in Docker-based systems related to cloud environments and security. Last but not least, this paper provides a future work outlook which aims at improving the use of Docker in large-scale distributed systems.
Keywords: Docker Container, Deployment, CI/CD pipelines, Load Balancing, Scalability, Kubernetes.