Docker Introduction

Docker is a Container Engine.
A Container Engine sits on top of Operating System and Hardware.
A Container Engine allows us to run Guest Applications on top of the Operating System.
All Containers will share the Operating System resources.

The benefit here is, let's say I want to run a Container 1 with Library Set 1 and I want to run Container 2 with Library Set 2, we can do that without any conflicts arising.
The Isolation between containers is a big benefit of using Docker.
Containers are faster to run than VMs, since the containers share a single OS, thus avoiding the overhead of starting VMs.

Docker comprises of three primary components:

  1. Docker Client
  2. Docker Engine
  3. Docker Registry
Docker Client: We can use a CLI - Command Line Interface to interact with Docker Engine.
Docker Engine: This is a Deamon process that listens for requests (either via API or Docker Client) and creates Docker Objects (Container/Images etc).
Docker Registry: In a Docker registry we can either publish (push) or download (pull) Docker Images. A popular Docker Registry is the Docker Hub.

Next: Installing Docker

>