Docker allows users to run applications in isolated containers using images from a registry similar to an app store. It simplifies deploying applications by allowing them to run without installing dependencies on the host machine. The docker architecture includes a client, host with docker daemon, images used to create containers which run applications, and a registry to store images. Users can install docker, search for images, run containers from images, check running containers, kill containers, and share data between containers and hosts.