Docker the product vs Docker the engine
Docker Engine is the open-source daemon (dockerd) plus CLI. Native on Linux. Free. This is what runs in production.
Docker Desktop is the commercial macOS/Windows experience: a tray app + a small Linux VM + a nice GUI. Free for personal use, education, and small businesses. Larger orgs pay.
The credible alternatives (2026)
- OrbStack (macOS) — fastest container experience on Apple Silicon. Lower memory, lower idle CPU than Docker Desktop. Personal favorite for many devs.
- Colima — CLI-only, free, open-source. Spins up a Lima VM with Docker or containerd inside.
- Podman / Podman Desktop — daemonless, rootless by default.
alias docker=podmanusually works. - Rancher Desktop — bundles Docker or containerd plus Kubernetes (
k3s) in one GUI.
When Docker is the wrong tool
- One-off scripts that don't need isolation — just run the script.
- Heavy filesystem I/O on macOS — the VM's filesystem boundary is slow; consider native dev or a remote Linux box.
- Single static binary with no dependencies — you might not need a container at all.
- Massive multi-machine orchestration — Compose stops at one host. Reach for Kubernetes or a managed service (ECS, Cloud Run, Fly.io).
Default to Docker for app dev. Add Compose when you have multiple services. Reach for Kubernetes only when one host is no longer enough.