What is Docker Engine?

In short Docker engine is the core part of Docker which creates and executes docker containers. There are some top orchestration tools provided by multiple vendors including Docker’s built-in orchestration. We will cover Orchestration in another article but for now lets concentrate on docker engine.

So If docker engine creates and executes docker containers then what is a docker container?

Docker Container

In short a docker container is an instance of docker image which can be an OS specific image with some configuration in it. These docker images are used to run specific services. For example you don’t want to install Nginx or Node.js services in your local machine and rather run them in some VM (virtual machine) for isolation. The issue with the VM is that it has an overhead of resources consumption, where as docker keeps your services isolated with lowest overhead.

Installing Docker Engine

Make sure you have sudo rights. This article assumes that you want to run docker as a normal user which is safe and good.

Docker Engine Installation in Debian Jessie

  • Installing apt utilities and Docker Official GPG key

  • Adding repository (AMD64 for 64 bit processors)

  • Running apt-get update

  • Install Docker engine community Edition

  • Adding user to docker group

  • Reboot or Log off

Testing Docker

and here is the output.

Unable to find image ‘hello-world:latest’ locally
latest: Pulling from library/hello-world
78445dd45222: Pull complete
Digest: sha256:c5515758d4c5e1e838e9cd307f6c6a0d620b5e07e6f927b07d05f6d12a1ac8d7
Status: Downloaded newer image for hello-world:latestHello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the “hello-world” image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:

For more examples and ideas, visit: