2. What is a container ?
● Runtime Definition:
“A sandbox for a process” or
“An isolated process.”
● The container process and
the container lifecycle are
tightly coupled.
● Share OS Kernel
● bins/libraries
OS
P P P P
cgroups
Ps namespace
5. Difference between VM and Container
Physical
OS
APP
Physical
OS
APP
VM Container
Hypervisor
(vsphere,NSX etc.)
Virtual Machine
NIC
Kernel
Agents
Storage
NIC
Storage
size DE
OS Dependencies
OS Dependencies
6. IMAGE
● A binary representation +
some metadata or state.
Ex:.vmdk is a disk image
● Images are made of layers,
conceptually stacked on top
of each other
Advantages:
● Consolidation of binary files
● Focus on specific place and
detect vulnerability
Scratch
Debian
perl
APP ..
..
..
7. Dockerfile
An environment in a
text file.
From:<base image>
………………
…………….
…………
…………
………
…………
……………….
…………………..
Dockerfile
9. What is Docker ?
● Docker is a computer program that performs
operating-system-level virtualization, also
known as "containerization". It was first
released in 2013 and is developed by Docker,
Inc. Docker is used to run software packages
called "containers"
● Repo: https://github.com/docker
● Idea of Mr. Solomon Hykes and team of dotcloud
and open source community
10. How Docker works and why it is so fast in terms of running a
container from an image
Docker Host
……
……
…….
Pull / Push
(Diff only)
Registry
cache
Image tree
Client
Daemon
API
Pull
Create
Commit
Run
etc.
-Container lifecycle
management
-network
-storage
N
V
Container Lifecycle
Management
11. Containers have been around for avery long time.(c.f. LXC,
Solaris Zones etc)
What does Docker bring to the table then ?