Lab 4 of 17 · By Michael Stout
In this lab
Use Copy beside a command to copy it exactly.
Containerize an app with Docker Desktop
Chapter 2 draws a line between virtualization and containerization: a full guest OS per instance versus a lightweight, portable unit with no OS overhead. This lab installs Docker Desktop on Windows and has you feel that difference firsthand, in under ten minutes.
The exam distinction, made concrete
A virtual machine boots its own kernel. A container shares the host's kernel and packages only the application and its dependencies — which is why Chapter 2 flags “no OS overhead” as the detail the exam actually tests, not just “containers are lighter.” More attack surface per integration is the trade-off: every container you run is another thing to patch, scan, and account for.
Docker Desktop is free for individuals, small businesses, and education. Organizations with 250+ employees or $10M+ in annual revenue need a paid Pro, Team, or Business subscription — worth knowing before you recommend it at work.
What you'll need
Windows 10 (64-bit, version 21H2+) or Windows 11, with WSL2 support.
Local administrator rights, and virtualization enabled in your BIOS/UEFI (on by default on most modern PCs).
At least 5 GB free for the installer and base images.
15–20 minutes, including a restart.
Get the engine running
- Download it. Go to
docker.com/products/docker-desktopand choose the Windows installer matching your CPU (AMD64 for almost everyone). - Run the installer. Accept the default option to use the WSL2 backend. Windows may prompt you to restart to finish enabling WSL2 — do that if asked.
- Launch Docker Desktop. Accept the license terms, and sign in or skip — a Docker account isn't required for personal use of the free tier.
- Check it's running. Open PowerShell and run:You should get a version string back.
docker --version
Feel the difference from a VM
- Run the classic first container:Docker pulls a tiny image and runs it. Notice how fast this is compared to booting a VM — there's no guest OS to start.
docker run hello-world
- Try something interactive:This pulls a full Ubuntu userland and drops you into a shell inside it — but it's sharing your host's kernel, not running its own.
docker run -it ubuntu bash
- See what's on your system:
docker ps -a docker images
docker ps -alists every container (running or stopped);docker imageslists every image you've pulled or built — each one is more attack surface to track.
Every image you pull from a public registry runs someone else's code on your machine. Chapter 2's “more integration, more attack surface” line applies here directly — know the source before you run it, the same as any other download.
Sources. Docker, Docker Desktop, docker.com/products/docker-desktop. Docker, pricing and licensing terms, docker.com/pricing/faq. Licensing thresholds and system requirements are current as of September 2026 and change between releases — re-verify before teaching this lab live.