官术网_书友最值得收藏!

Docker containers

In simple terms, Docker containers provide an isolated and secure environment for the application components to run. The isolation and security allows one or many containers to run simultaneously on a given host. Often, for simplicity's sake, Docker containers are loosely termed as lightweight-VMs (Virtual Machine). However, they are very different from traditional VMs. Docker containers do not need hypervisors to run like virtual machines, and thus, multiple containers can be run on a given hardware combination.

Virtual machines include the application, the necessary binaries and libraries, and an entire guest operating system, all of which can amount to tens of GBs. On the other hand, Docker containers include the application and all of its dependencies, but share the kernel with other containers, running as isolated processes in the user space on the host operating system. Docker containers are not tied to any specific infrastructure: they run on any computer, on any infrastructure, and in any cloud. This very aspect makes them look like a real-world container. The following diagram sums it all up:

Figure 1.18: Difference between traditional VMs and Docker containers

Listed next are some of the key building blocks of the Docker technology:

  • Docker Container: An isolated and secured environment for applications to run.
  • Docker engine: A client-server application having the following components:
    • Daemon process used to create and manage Docker objects, such as images, containers, networks, and data volumes.
    • A REST API interface
    • A command-line interface (CLI) client
  • Docker client: A client program that invokes the Docker engine using APIs.
  • Docker host: The underlying operating system sharing kernel space with the Docker containers. Until recently, the Windows OS needed Linux virtualization to host Docker containers.
  • Docker hub: The public repository used to manage Docker images posted by various users. Images made public are available for all to download in order to create containers using those images.
主站蜘蛛池模板: 淅川县| 化隆| 静海县| 马鞍山市| 信阳市| 阿尔山市| 隆德县| 谢通门县| 雷山县| 浠水县| 天峨县| 甘南县| 浑源县| 治多县| 昆明市| 南靖县| 麟游县| 库尔勒市| 通山县| 任丘市| 怀远县| 榆林市| 五大连池市| 泰来县| 江阴市| 达州市| 丰县| 泽普县| 乌拉特后旗| 犍为县| 定西市| 荥阳市| 枝江市| 南充市| 青川县| 章丘市| 汝南县| 兰坪| 乌什县| 朔州市| 沽源县|