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:
- Image (鏡像): A read-only template or blueprint used to create containers.^[600-developer-docker-docker.md] It acts as the foundation for a container.
- Container (容器): A runnable instance of an image.^[600-developer-docker-docker.md] Containers are the actual executing applications created from the image templates.
- 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.
Related Concepts¶
- Docker Compose
- [[Virtualization]]
- [[Software deployment]]
Sources¶
^[600-developer-docker-docker.md]