Basic Concepts — Images and Containers

Let's look into two fundamental concepts of Docker: containers and images.

We'll cover the following

What is a container?

A container is an isolated or sandboxed execution environment for executing software. Containers rely on virtualization features built into the Linux kernel, which creates a fully isolated set of processes that do not know about the rest of the system.

Containers can be started, paused, resumed, and stopped like virtual machines (VMs). This similarity aside, containers are different beasts. VMs require a host OS, a software abstraction layer known as a hypervisor, and an entire OS installation for each instance. On the other hand, each container is just piggybacking on the resources of a single kernel, with just a thin layer of isolation.

This means you can run many more containers on a single machine in comparison to VMs. They’re also faster and use fewer resources.

Get hands-on with 1200+ tech skills courses.