Loading

Quipoin Menu

Learn • Practice • Grow

docker / Docker Architecture
tutorial

Docker Architecture

Docker follows a client‑server architecture. Understanding these components helps you use Docker effectively.

Docker Components

  • Docker Client: The command-line tool you use to interact with Docker (e.g., docker run). It sends commands to the Docker daemon.
  • Docker Daemon (dockerd): The background service that manages images, containers, networks, and volumes. It listens for API requests and performs the actual work.
  • Docker Registry: A storage for Docker images. Docker Hub is the default public registry. You can also use private registries.
  • Images: Read‑only templates used to create containers. Images are built from a Dockerfile.
  • Containers: Runnable instances of images. You can start, stop, move, or delete a container.

How They Work Together

1. You type docker run hello-world in the client.
2. The client sends the command to the daemon.
3. The daemon checks if the hello-world image exists locally.
4. If not, it pulls the image from a registry (like Docker Hub).
5. The daemon creates a container from the image and runs it.
6. The container prints output and exits.

Docker Object Model

Think of it this way:
  • Dockerfile = recipe
  • Image = compiled recipe (read‑only template)
  • Container = cooked dish (runnable instance)
  • Registry = kitchen where recipes are stored

Running Docker in Background

On Linux, the Docker daemon runs as a system service. On Windows/Mac, Docker Desktop runs a virtual machine with the daemon inside. The client connects to it automatically.


Two Minute Drill
  • Docker uses a client‑server architecture.
  • The client sends commands to the daemon (dockerd).
  • Images are stored in registries (like Docker Hub).
  • Containers are running instances of images.
  • The daemon manages the lifecycle of containers.

Need more clarification?

Drop us an email at career@quipoinfotech.com