Docker Architecture
Typing a docker command does not make that program build a container. Docker splits into a Client that sends commands, the daemon (dockerd) on a Docker Host that actually handles images and containers, and a Registry that stores images — and the three talk over APIs. A pull is the daemon fetching an image from the registry onto the host; a run is copying that image into a live instance.
01 Concept at a Glance
Interactive Step-by-StepClient
Docker Host
Registry
across the networkDocker is not one program. It splits into the Client that takes your commands, the Docker Host that does the work, and the Registry that stores images. The Registry usually sits across the network.
02 Understand It Simply
For EveryoneLike a restaurant with a kitchen. The customer (Client) only hands over an order, all the cooking happens in the kitchen (the daemon), and ingredients come from a warehouse (the Registry). The customer never walks into the warehouse.
The docker in your terminal is a client that builds a request and sends it to the daemon.
The daemon manages images, containers, networks and volumes, so nothing works when it isn't running.
An image is a read-only original and a container is an instance of running it, which is why one image can back several containers.
Client and daemon may sit on the same machine or be separated across a network.
- –Checking the daemon first when docker commands fail
- –pointing a client at a remote host
- –telling images and containers apart
- –and deciding whether to run a private registry
03 Frequently Asked Questions
FAQWhat is Docker Architecture?+
Typing a docker command does not make that program build a container. Docker splits into a Client that sends commands, the daemon (dockerd) on a Docker Host that actually handles images and containers, and a Registry that stores images — and the three talk over APIs. A pull is the daemon fetching an image from the registry onto the host; a run is copying that image into a live instance.
Where is Docker Architecture used?+
Checking the daemon first when docker commands fail, pointing a client at a remote host, telling images and containers apart, and deciding whether to run a private registry.
What's a simple analogy for Docker Architecture?+
Like a restaurant with a kitchen. The customer (Client) only hands over an order, all the cooking happens in the kitchen (the daemon), and ingredients come from a warehouse (the Registry). The customer never walks into the warehouse.
