Skip to content
🎉 Launch sale:50% off everything over $22 — automatically applied at checkout· ends Aug 2Shop the sale →
DevOps AI ToolKit
Newsletter
advanced Premium Production Operations · ⏱ 60 min

Production Incident Simulation

Scenario

It’s an incident: a multi-service app is throwing errors for some users. Multiple faults are planted at once — a DB connection failure, an unhealthy dependency, a full volume, a wrong env var, a reverse-proxy routing bug, and a resource-starved container. Diagnose systematically, repair, validate every service is healthy, and produce a brief incident writeup.

Learning objectives

  • Establish what is and isn’t working
  • Diagnose each independent fault
  • Apply repairs in a safe order
  • Validate all services report healthy
  • Write a concise incident summary

Before you start

Required software: Docker Engine 24+ with Compose v2

Prerequisites: Docker Monitoring & Troubleshooting path, Docker CI/CD & Production path

  1. Download and unzip the lab.
  2. Start the stack: docker compose up -d.
  3. Load the app — parts of it work, parts fail. Begin triage.

Instructions

Full instructions are part of Individual Pro

Unlock the step-by-step instructions, the solution guide, validation scripts, and downloadable files.

Unlock with Pro

Hints

💡 Where do I start?

Map the topology first (proxy → web → api → db + workers). Check health/logs per hop from the edge inward; treat each fault independently so one red herring doesn’t hide another.

💡 Some services flap under load

Look for containers hitting memory/CPU limits (docker stats) and a volume at 100% — a full volume can make a “healthy” service start failing writes.

Validate your work

From the lab folder, run:

bash validation/validate.sh

The script reads only your local Docker state, never transmits data off your machine, and returns a status code:

  • 0 — Lab successfully completed
  • 1 — Validation failed
  • 2 — Required dependency missing
  • 3 — Lab environment not running
  • 4 — Configuration error
  • 5 — Validation timed out

Note: validation targets Linux first. On Docker Desktop (macOS/Windows) some host-level checks (e.g. disk usage) may report differently; each script documents its limitations.

Solution

The full solution + troubleshooting explanation is available to Individual Pro members. Try to solve it first — that’s where the learning is.

Upgrade to Pro

Reset the lab

  • docker compose down -v && docker compose up -d from the original lab files restores the starting (broken) state.

Interview questions

  • How do you triage a partial outage across multiple services?
  • What signals tell you a container is resource-starved?
  • What belongs in a good incident summary?

Finished this lab?

Sign in to record your completion and track progress across the path. Completion is recorded server-side.

Related labs