Docker Deep Dive · Course Index
🐳 Docker Deep Dive
A hands-on Docker course that starts from the terminal up: first the Linux floor every container stands on, then Docker itself. Lessons are published here as the course progresses — check back, or watch the repo.
How this course works
- Read a lesson → run its lab chapter → take the self-check quiz.
Each lesson's labs are a chapter folder in
this repo; clone once,
git pullbefore each lesson. - Everything runs on macOS, Windows, or Linux — labs happen inside a disposable Ubuntu container, identical on every OS.
- The ☰ button (top right, on every page) jumps between lessons; diagrams marked ▶ play are animated — step through them.
- Quizzes grade themselves in your browser — commit to an answer before revealing.
git clone https://github.com/pdfarhad/docker-deep-dive.git
start · Getting set up
phase 0 · Prerequisites — the Linux runway
- P1
The Terminal & the Shell
terminal vs shell vs kernel; navigate and manage files — in a container that's identical everywhere ~25 min - P2
Files, Permissions & root
the filesystem tree, mode strings, chmod/chown — and why containers run as root ~25 min - P3
Streams, Pipes & Text Tools
stdin/stdout/stderr, redirection, and pipelines that answer questions ~25 min - P4
Processes, Environments & Signals
PIDs and trees, env inheritance, SIGTERM vs SIGKILL, exit 137 ~25 min - P5
Kernel, Syscalls & Namespaces
user vs kernel space, strace, /proc — then build a namespace by hand ~30 min - P6
Ports, DNS & Packages
sockets and binds, 127.0.0.1 vs 0.0.0.0, /etc/hosts, apt ~30 min - P7
Shell Scripts & Entrypoints
bash scripts with a safety net, and the exec "$@" entrypoint pattern ~30 min - …the runway is complete — the Docker lessons land next, published as the course progresses
§ · Reference (prints well)
Questions?
Bring them to class, or open an issue on pdfarhad/docker-deep-dive — include the command you ran and the output you got.