Docker host and Docker engine

A Docker host is a physical or virtual server on which the core component of Docker runs, the Docker engine. The Docker engine encapsulates and runs workloads in Docker containers.

Like a hypervisor, the Docker engine provides portions of the host's computing resources to its containers, and it isolates containers from one another.

Unlike a hypervisor, the Docker engine does not run separate guest operating systems for its containers. All containers share the same Docker host kernel. As a consequence, workloads in containers cannot use features that are not supported by the Docker host kernel. For the broadest workload potential, use the most recent version of your distribution.

Docker uses Linux features to isolate containers from one another. These features include control groups, namespaces, and pivot_root(). Similar to chroot(), pivot_root() restricts the container view of the root file system to a branch of the host's file system.