Docker — Core Architecture Explained

Stalin Rijal
Jul 29, 2023

--

Docker Engine:

Docker Client:
- Docker commands are executed here.
Daemon:
- It implements the rest API
Containerd:
- Handles container execution and lifecycle operations. (like start, stop, pause, unpause, etc)
OCI Layer:
- It interface with kernal. OCI creates the container and exist.

Kernel Internals:

We use two main building blocks when building containers:

1. Name Spaces:
- It is about isolation.
- It creates multiple OS based on the main OS(Operating System)
- It is bit like hypervisor and VM. (i.e allows resource sharing in virtually in isolated environment)

2. Control Groups: (Cgroups)
- Helps in grouping of objects/processes.
- Controls resource usage of container by setting limits
- Also called as “Job Objects” in Windows server.

--

--

Stalin Rijal
Stalin Rijal

Written by Stalin Rijal

SRE || CLOUD || DEVOPS ENGINEER

No responses yet