Docker Engine is a client-server application that has the following components:
- Dockerd: This is a daemon process that keeps running in the background of the host OS to keep a track of the Docker container attributes, such as status (up/running/stopped)
- Rest API: This provides the interface to interact with daemon and perform actions on containers
- Docker command line: This provides the command-line interface to create and manage Docker objects, such as images, containers, networks, and volumes