Skip to content

Docker core components

Docker is a platform that enables developers to deploy applications inside containers, leveraging OS-level virtualization to deliver software in packages called containers.^[600-developer-docker-docker.md]

Docker operates on a client-server architecture, which consists of three primary components: the Client, the Daemon (host), and the Registry.^[600-developer-docker-docker.md]

Architecture

The Docker architecture divides the system into specific responsibilities:

  • Client: The interface (often a command-line tool like the Linux TTY) where users issue commands to interact with Docker.^[600-developer-docker-docker.md]
  • Daemon (Server): The background process running on the host machine (e.g., "containers" or "host") that listens for API requests sent by the Client and manages Docker objects such as images and containers.^[600-developer-docker-docker.md]
  • Registry: A storage and distribution system for named Docker images, commonly hosted on servers like hub.docker.com.^[600-developer-docker-docker.md]

Core Elements

Three fundamental elements comprise the operational workflow of Docker:

  1. Image (鏡像): A read-only template or blueprint used to create containers.^[600-developer-docker-docker.md] It acts as the foundation for a container.
  2. Container (容器): A runnable instance of an image.^[600-developer-docker-docker.md] Containers are the actual executing applications created from the image templates.
  3. Repository (倉庫): The location where images are stored.^[600-developer-docker-docker.md] Users can pull images from a repository to their local machine or push new images to it.

Sources

^[600-developer-docker-docker.md]