We will begin with verifying that your Docker setup is correct and that you can issue commands.

Open a command prompt and run:
docker run hello-world
On Windows you might have to start the Docker Quickstart terminal.

This should show you a Hello from Docker! message and additional details on what happened under the hood.

Breaking down the command
Let’s have a closer look at what the command we’ve just run actually means.

<docker> <run> <hello-world>

docker: docker client itself
run: the command we've given to Docker, which starts a container from an image (try running docker run --help)
hello-world: the name of the docker image we want to run

1. Client, daemon and registry

architecture

The client is responsible for relaying the commands we give on the command line to the Docker daemon, which is running on the Docker host. Client and daemon are not necessarily running on the same machine. The daemon does all the heavy lifting: building images, starting containers or retrieving images from the internet such as the Docker Hub.