Docker: Client, Daemon, Hub and Registry

Docker-engine has four elements such as Client, Daemon, Private registry, and Hub. Its prime purpose is to port Software applications from one location to another (For instance, local server to cloud). 

Docker Engine

  • Docker born to simplify the porting of applications.
  • Docker supports Containers, which can use to port application code to various regions – Unit, Integration, and Live (Production). As said containers carry image of application. In addition, containers are executable. Here is Docker for Beginners.

Docker Architecture

4 Components of Docker Engine Architecture
Docker Engine Architecture

Docker Components

4 Docker Engine Elements Contribute to Architecture
Photo by Adrianna Calvo on

1.Docker Client

Docker client is downloaded along with Docker installation. Its purpose is to interact with Docker engine. In the architecture diagram it is two way communication between client and Docker engine.

2.Docker Daemon

It is a server and it communicates with client. Only client can communicate with Docker engine (Host) . In the diagram, it has shown with a two-way arrow (so the server receives and sends responses to the client). The communication will be with the HTTP protocol.

3.Docker Registry

Registry stores images that contain libraries to run an application. You can call these snap-shots ( read-only code). With the images, you can create a container that is executable. Check out what is Docker image?.

4.Docker Hub

Hub is a public registry, which is maintained by Docker Inc. You can find a lot of preinstalled images, which a user can pull and do the experiment, and modify. The communication between Docker Hub and Daemon will be through the HTTP protocol.

Keep Reading


  1. Docker Architecture

Author: Srini

Experienced software developer. Skills in Development, Coding, Testing and Debugging. Good Data analytic skills (Data Warehousing and BI). Also skills in Mainframe.