Install Docker
Install Docker Desktop on macOS and Windows, Docker Engine on Linux. Verify with docker run hello-world and learn the licensing and resource gotchas.

Docker is the containerization tool every backend tutorial reaches for. On macOS and Windows you install Docker Desktop (a GUI plus a Linux VM running Docker Engine inside it). On Linux you install Docker Engine directly on the host. Both expose the same docker CLI.
macOS
Use Homebrew. Docker Desktop is a cask (GUI app), so use --cask.
# install docker desktop via homebrew
brew install --cask docker
If you don't have Homebrew yet, see Install Homebrew.
Launch the app once from /Applications to start the engine and grant the install its required permissions. After that docker is on your PATH.
Apple Silicon users: pick the Apple Silicon build (Homebrew picks the right one). Some older images are amd64-only and run via Rosetta emulation, which is slower. Add --platform linux/amd64 to docker run when you need that.
Linux
Don't apt install docker.io — it's an older fork. Use Docker's official repo. The convenience script handles it for most distros:
# install docker engine on linux via the official script
curl -fsSL https://get.docker.com | sh
After install, add yourself to the docker group so you don't need sudo for every command. Log out and back in for it to take effect.
# allow your user to run docker without sudo
sudo usermod -aG docker $USER
Windows
Download Docker Desktop from docker.com/products/docker-desktop, or use winget:
# install docker desktop on windows
winget install -e --id Docker.DockerDesktop
Docker Desktop on Windows uses WSL2 as its backend by default. If WSL2 isn't installed, the installer offers to set it up.
Licensing
Docker Desktop is free for personal use, education, open-source projects, and small businesses (under 250 employees and $10M revenue). Larger companies need a paid subscription. On Linux, Docker Engine itself is open-source under the Apache 2.0 license — no Docker Desktop, no licensing question. If your company forbids Docker Desktop, use colima (macOS) or Rancher Desktop as drop-in replacements.
Verify
# run the hello-world image to check the engine works
docker run hello-world
The first run pulls the image (a few MB), runs it, prints a confirmation message, and exits. If you see Cannot connect to the Docker daemon, the engine isn't running — open Docker Desktop, or sudo systemctl start docker on Linux.
Common gotchas
- Resource limits on Docker Desktop: defaults are 2 CPUs, 4 GB RAM. Real workloads (Postgres + a couple services) hit this fast. Bump to 4 CPUs and 8 GB minimum in Settings → Resources.
- Disk usage creeps up: images, stopped containers, and dangling volumes pile up.
docker system prune -a --volumesreclaims space. Run it monthly. docker-composevsdocker compose: V2 is built into the Docker CLI asdocker compose(no hyphen). Old tutorials saydocker-compose(the V1 binary). Both still work, V2 is what you want.- File-sharing performance on macOS: bind-mounts (host → container) are slow on macOS by default. For dev workloads, use
:cachedor:delegatedflags, or switch to named volumes.
With docker run hello-world working, you have the foundation for running databases, services, and ML runtimes locally.
From the dictionary
Terms used in this post
Quick reference for the term you met above. Each one comes from the AI dictionary.
- Machine LearningML
- A subset of AI where the system learns patterns from data instead of following hand-written rules. The output is a model — a set of learned numbers that maps inputs to outputs. Spam filters, recommendation systems, and credit-risk scorers are classical ML.
- e.g. Gmail's spam filter learns which emails you mark as junk and updates its model — that's machine learning, not a rule someone wrote.
Rate this article
How helpful did you find this?
- 01
Install Homebrew
February 15, 2026
- 02
Install Git
February 16, 2026
- 03
Install Node.js and npm
February 17, 2026
- 04
Install Python with uv
February 18, 2026
- 05
Install Docker
February 19, 2026
- 06
Install Ollama
February 20, 2026
- 07
Install llama.cpp
February 21, 2026
- 08
Install LM Studio
February 22, 2026
- 09
Install the Anthropic SDK
February 23, 2026
- 10
Install the OpenAI SDK
February 23, 2026
Newsletter
Get new articles in your inbox
AI engineering, LLM systems, and software architecture — no filler.
No spam. Unsubscribe any time.
Discussion
Comments
Leave a note about the article, architecture choices, or what you would build next.
Loading comments...