Docker software, explained one tool at a time
“Docker” is not a single program. It is a family of tools that cover building, running, sharing and securing containers. This page shows what each piece does so you install only what you need.
Docker software at a glance
| Tool | Main job | Interface | Where it runs |
|---|---|---|---|
| Docker Desktop | All-in-one local environment | App and CLI | macOS, Windows, Linux |
| Docker Engine | Run containers on servers | CLI and API | Linux, Windows Server |
| Docker Compose | Run multi-service apps | CLI and YAML | Anywhere Docker runs |
| Buildx | Advanced image builds | CLI | Anywhere Docker runs |
| Docker Hub | Store and share images | Web and CLI | Cloud |
| Docker Scout | Find image vulnerabilities | Web, app and CLI | Cloud and local |
Docker Desktop
The friendliest way to get Docker software onto a Mac, Windows or Linux computer. It bundles the engine, the command line, Compose and a dashboard into a single installer, and keeps everything updated for you.
- Graphical view of containers, images, volumes and logs
- Built-in Kubernetes cluster you can switch on for testing
- Extensions marketplace for databases, security and debugging tools
- Settings for CPU, memory and file sharing in a few clicks
Docker Engine
The core daemon that actually builds images and runs containers. Engine is what powers servers, virtual machines and CI runners, and it is controlled through the docker command line client.
- Installed from a package repository on Linux distributions
- No graphical interface, which suits headless production hosts
- Exposes an API that other tools and scripts can talk to
- Open source, so you can inspect and extend it
Docker Compose
Describe an entire application, such as a web service, a database and a cache, in one YAML file. A single docker compose up starts all of them, connected on a private network.
- One readable file replaces a long list of run commands
- Named volumes keep your data between restarts
- Profiles let you switch optional services on and off
- Ideal for reproducing a full stack on any developer machine
Buildx and Build Cloud
Buildx extends the standard build command with modern features: multi-platform images, advanced caching and parallel stages. Build once for both Intel and ARM and publish a single tag that works on either.
- Create images for amd64 and arm64 from one machine
- Export and import build cache between CI runs
- Optional remote builders to offload heavy compilation
Docker Hub
A hosted library of container images. Pull trusted base images for languages, databases and web servers, or publish your own to public and private repositories.
- Official and verified publisher images for popular software
- Private repositories for company projects
- Automated webhooks that trigger deployments after a push
Docker Scout
Looks inside your images, lists every package and flags known vulnerabilities with suggestions for safer base images. Findings show up in the command line, the desktop dashboard and on the registry.
- Software bill of materials generated for each image
- Clear fix advice, such as which tag to upgrade to
- Policy checks you can run before every release
Pick your Docker software and install it
Installers for macOS, Windows and Linux are one page away.
Which Docker software should you pick?
Match the tool to the job you have today.
Docker Desktop
Install it, open the dashboard and click through your first containers without touching a config file.
Docker Engine
Add the package repository, install the engine and keep it patched with your normal system updates.
Docker Compose
Keep services, networks and volumes in one file that lives next to your source code in version control.
Buildx
Publish one image tag that runs on x86 servers and on Apple silicon laptops alike.
Docker software FAQ
Do I need every Docker tool?
No. Most people start with Docker Desktop, which already contains the engine, Compose and Buildx. Add Hub and Scout when you begin sharing and securing images.
Is Docker Compose included with Docker Desktop?
Yes. Compose ships as a plugin inside Docker Desktop, and on Linux servers it can be added as a package next to the engine.
Can I use Docker Engine on a laptop?
On a Linux laptop, absolutely. On Mac and Windows the engine needs a Linux layer, which Docker Desktop sets up for you.
Where do I put my own images?
Push them to a registry such as Docker Hub, or to a private registry run by your company or cloud provider.