Skill · Containers · Build and run containers
Describe and harden a multi-service application with Docker Compose: variables, networks, data, secrets, health, resources and variants
Describe a multi-service application in a compose.yaml and check what Compose will create with docker compose config, drive its lifecycle (up, stop, down, down -v) under a project name, control interpolation and the precedence of environment files, spread services over networks, some of them internal, keep a database's data across every recreation and grant a file secret to a single service while knowing its limits. Then make it reliable: declare a healthcheck and make a service or a migration wait with depends_on conditions, knowing that an unhealthy service is not restarted and that the client must retry; limit memory, CPU and processes and check the limit in the cgroup, recognise an OOMKilled container, choose a restart policy, know what it restarts and tune the grace period; assemble a base and named variants with -f, predict how they merge and clear an inherited key with !reset, reserve a service for a profile, find a project's files with docker compose ls and use docker compose watch.
Start lesson 1The Containers domain
- 8 lessons
- ~11 h 35 of reading
- 8 quizzes
- 0 proof lab
Lessons
How to learn it
8 lessons, about ~11 h 35, in program order. Each lesson ends with its quiz.
The program
8 lessons · ~11 h 35
Part 1 · Describe an application with Compose 4 lessons · ~5 h 10
Part 2 · Make a stack reliable 4 lessons · ~6 h 25
Beyond the lessons
Assess, practise, pass the proof
Reading a lesson confirms nothing. A skill is confirmed by a passed quiz, practised in a guided lab, and put to the test by a challenge or a mission; an imported lab result is not verified by the site.
Assess yourself
8 quizzes
At the end of the lessons: passed at 70%, they confirm the skill.
Practice
9 guided labs
- Separate frontend and data networks with Compose
- Keep application data across Compose recreation
- Start and recreate a two-service Compose application
- Two variants from one base, and no dev mount left in deployment
- Resolve Compose variables without mixing environments
- Enforce Compose resource budgets on the engine
- Wait for readiness, not just a running container
- Grant a Compose secret only to its consumer
- Gate application startup on a successful migration
Proof
No proof
Neither a challenge nor a mission with a proof yet.
Placement test
Preparing the questions…
Your answers in detail
For each question asked: your answer, the correct answer, its explanation and the page to reread.
Around it
Who requires it, who teaches it
Required by
Taught by
Same block · Build and run containers
- Run containers, persist data and connect them
- Build an OCI image
- Operate and troubleshoot Docker containers: lifecycle, logs, inspection and daemon
- Secure the installation and the containers
- Publish an image to a registry: access token, tag and digest
- Operate and restore a Docker Compose stack: logs, saturation, backup, update and rollback