Week 01 · Docker + Linux Basics
-
Why Docker exists — the 'works on my machine' problem
Three escalating versions of the classic problem — different Java versions on two laptops, a dependency that updated while you were away, and a Mac laptop deploying to a Linux server — and why packaging the whole environment is the fix.
-
VMs vs Containers — what's actually shared
A VM has its own kernel, its own OS, gigabytes of disk. A container shares the host kernel and packages only the userspace. Why the difference drives everything else.
-
Image vs Container — the recipe vs the meal
Images are recipes (immutable files on disk); containers are meals (running instances). Walk through `docker run` — twice — and see why the image never changes.
-
docker run — every flag explained
Dissect the command most students type but few understand. Image, tag, -it, -d, --name, -p, and a production-style nginx command — one piece at a time.
-
docker run vs docker exec — new container vs existing one
The one distinction that trips up every beginner: `run` creates a new container, `exec` enters one that's already running.
-
The Linux filesystem — where everything lives
Containers are Linux, and Linux puts everything in one tree starting at `/`. A guided tour of the directories you'll actually meet, and three commands to move around.
-
Container lifecycle — created, running, stopped, removed
A container moves through a small set of states. Every docker command you type is either one of those states or a transition between them.
Week 11 · OSI Model, IPv6 & VPN
-
The OSI Model
A single map for everything you already know about networking. The seven layers and how they stack together to send one HTTPS request.