Skip to content

Docker architecture components

Docker utilizes a client-server architecture to manage containerization workflows^[600-developer__docker__docker.md] The system consists of three primary components: the Docker Client, the Docker Daemon (which hosts Containers), and the Registry^[600-developer__docker__docker.md] Communication is initiated by the client, typically through a command-line interface (Linux tty), which sends requests to the daemon to perform actions^[600-developer__docker__docker.md]

The Registry acts as a storage server for images^[600-developer__docker__docker.md] A public example of such a repository is Docker Hub (hub.docker.com), where users can pull and distribute application images^[600-developer__docker__docker.md] When the daemon needs an image that is not available locally, it retrieves it from this registry^[600-developer__docker__docker.md] The daemon manages the lifecycle of the containers, which are running instances created from these images^[600-developer__docker__docker.md]

Components

  • Docker Client: The interface (e.g., command line) used to issue commands^[600-developer__docker__docker.md]
  • Docker Daemon: The background service listening for client requests and managing containers^[600-developer__docker__docker.md]
  • Registry: A server (like Docker Hub) that stores and distributes Docker images^[600-developer__docker__docker.md]

Sources

^[600-developer__docker__docker.md]

[[Docker Image]] [[Docker Container]] Dockerfile DevOps