Catalog / docker
Docker
Learn Docker fundamentals
Install
$ learnctl install docker@0.3.2
Current version 0.3.2, published 2026-07-26.
At a glance
- Stages
- 9
- Tasks
- 33
- Interviews
- 22
- Concepts
- 11
- Time
- 4 h 40 m
- Size
- 126.7 KB
Difficulty distribution
Table of contents
-
1. Docker Fundamentals
- Explain the difference between containers and Virtual Machines.
- Describe how containers share the host kernel.
- Run a simple container in the foreground and understand basic container isolation.
docker-fundamentals -
2. Container Lifecycle
- Start, stop, and restart containers.
- Run containers in detached mode.
- View container logs and inspect container state.
- Clean up stopped containers and unused images.
container-lifecycle -
3. Port Publishing
- Explain why container ports are isolated by default.
- Publish container ports to specific host ports using the -p flag.
- Verify host port mappings and access services running inside containers.
port-publish -
4. Bind Mounts for Development
- Understand the difference between container layers and host storage.
- Mount host directories into containers using bind mounts.
- Leverage bind mounts for real-time local code hot reloading.
bind-mounts -
5. Creating Custom Images
- Explain how images are built from layered instructions.
- Write a Dockerfile using FROM, WORKDIR, COPY, RUN, and CMD.
- Build and tag a custom Docker image using docker build.
dockerfile-instructionsimage-buildimage-layers -
6. Optimizing Dockerfiles
- Explain how Docker's build cache works and how to structure layers to maximize cache hits.
- Use .dockerignore to exclude unnecessary files from the build context.
- Implement multi-stage builds to minimize production image size.
dockerfile-optimization -
7. Data Persistence with Volumes
- Explain the difference between bind mounts and named volumes.
- Create, inspect, and manage named Docker volumes.
- Persist container data across container recreations using named volumes.
data-volumes -
8. Container Networking
- Understand default vs user-defined bridge networks.
- Create custom bridge networks.
- Connect multiple containers to a network and resolve them using DNS service names.
container-networking -
9. Multi-Container Orchestration with Compose
- Define a multi-container stack in a compose.yaml file.
- Configure service dependencies, custom networks, and named volumes in Compose.
- Manage the entire stack lifecycle using docker compose up and down.
docker-compose
All versions
| Version | Published | Size | sha256 |
|---|---|---|---|
0.3.2 latest |
2026-07-26 | 126.7 KB | 87b64713211c |
0.3.1 |
2026-07-26 | 128.8 KB | 7b06c352ff36 |
0.3.0 |
2026-07-25 | 125.3 KB | 530eafe3c8fd |
0.2.1 |
2026-07-11 | 80.1 KB | 430f636f8eff |
0.2.0 |
2026-07-09 | 79.2 KB | 7e5f1afd5323 |
0.1.0 |
2026-06-20 | 67.7 KB | 72f8e30c0ee8 |
Validation
Last validated 2026-07-26
on Windows-11 · 33/33 passed.