All-Things-Docker-and-Kubernetes

Linux Kernel Features

Chroot

The chroot jail is the foundation of any container used to isolate processes from the root directory and present only the contents of a specific directory to the process.

Modern Linux Features

In addition to the two core components of the Docker architecture, it also uses the following features:

Namespaces

Namespaces allow for a high-level process isolation of a system’s resources. These are logical separation of container workloads. Here are some types of namespaces:

PID namespace

Handles process isolation (PID: Process ID). This means that each namespace has its own process ID.

Net namespace

Isolates the network stack and manages the network interfaces. Each namespace has its own private set of IP addresses, firewall, routing tables, etc.

IPC namespace

Allows processes to be isolated from SysV interprocess communication.

MNT namespace

Manages the filesystem mountpoints.

UTS namespaces

UTS or Unix Timesharing System isolates the hostname, kernel, and version identifiers.

Control Groups

This is used by Docker to limit resource allocation. This ensures that a process doesn’t consume the entire resources of a system.

UnionFS

The Union filesystem upkeeps the overall sizes of the containers. It starts with a base image and then merges in any changes.

How it works:


Back to first page