ABSTRACT

This chapter describes container technology, and the Docker open source technology used to create and run containers. The chapter begins by examining the advantages and disadvantages of VMs, including the cost of transporting a VM image over a network and the time required to spin up a new VM. It then considers the question of how a virtualized server can be created faster than a VM. It reviews Linux namespace facilities that provide isolated virtualized environments and the container approach that uses the namespace facilities to run lightweight virtualized servers. The chapter compares containers and VMs, and gives the advantages and disadvantages of each. The chapter describes the Docker technology used to create and deploy containers, including Dockerfile and the docker tool. The chapter uses a small example to illustrate the process of creating and running a container.