Understanding Docker Architecture
0 / 159
Overview of docker architecture
Containers are software packages that include everything a programme requires to execute in a logical box. The operating system, application code, runtime, system tools, system libraries, and other components are included.
Docker images are used to build Docker containers. Because images are read-only, Docker creates a container by layering a read-write file system atop the image’s read-only file system.
Docker is an open-source framework for building and executing programmes within Linux containers that is based on Linux containers. Docker is a tool for deploying several containers on a single host at the same time. Containers are quick and light since they don’t require the added burden of a hypervisor because they run directly within the kernel of the host computer.
Docker Engine :
Docker Engine is a containerization tool that you may use to develop and containerize your apps.
Docker Engine is a client-server programme that includes:
Dockerd is a long-running daemon process on a server.
APIs define interfaces via which applications may communicate with and command the Docker daemon.
- CLI – A client docker with a command line interface (CLI).
Through scripting or direct CLI instructions, the CLI employs Docker APIs to control or communicate with the Docker daemon.
- The underlying API and CLI are used by many other Docker apps.
- Docker objects such as images, containers, networks, and volumes are created and managed by the daemon.
Docker Architecture Components
The following are the primary components of the Docker architecture:
Docker Daemon handles Docker objects such as images, containers, networks, and volumes by listening to Docker API calls.
Docker Host is an all-in-one environment for executing and running applications. The Docker daemon, Images, Containers, Networks, and Storage are all part of it.
Docker Clients: Users can interface with Docker via Docker Clients. The Docker client is a command-line interface (CLI) that allows users to run and stop Docker daemon application instructions.
Docker Images are read-only templates created by following Dockerfile guidelines. Images determine the appearance of your bundled programme and its dependencies, as well as the processes that will execute when it is run.
Docker Registry is a repository for Docker images. Docker Hub is a public registry that anybody may access, and Docker is set up by default to use images from Docker Hub. You may use it to operate your own registry.
Docker Networking & Storage
Docker networking is a feature of the software that connects docker containers to each other and to the outside world so that they may interact with one another and talk to the Docker Host. Docker containers can be connected to workloads that aren’t Docker. The networking in Docker is handled via the Container Network Model (CNM).
Docker Storage: By default, all files generated inside a container are saved on a writable container layer, which ensures that the data is not lost when the container is no longer running. Volumes and bind mounts are two alternatives that Docker provides for containers to store files on the host computer so that they remain accessible even after the container is stopped.
I hope you now have the knowledge you need to learn more about docker architecture and perhaps you can utilize it in a project in the future.