Docker provides tools for building and running containerized applications. The Docker Engine manages Docker objects like images, containers, networks and volumes. Docker Desktop is for Mac/Windows and includes Docker Engine and other tools. Docker Compose defines multi-container apps. Docker Hub is a public registry and Docker Swarm manages clusters of Docker Engines.