Documentation
How to install the lab, use it, write your own scenarios and contribute. These pages come straight from the project repository at the latest release, so they match the labctl you install. Each one links to its source file if you want to suggest a fix.
Get started
- QuickstartInstall labctl, build your first lab and run a scenario.
- Install on macOSApple Silicon and Intel, with colima or Docker Desktop.
- Install on LinuxNative Docker on a modern distribution, no sudo for labctl.
- Install on Windows (WSL2)Run the lab inside WSL2 and open it from a Windows browser.
- Run in GitHub CodespacesBuild the lab in a codespace from your browser, with nothing installed locally.
- CPU and memoryHow much Docker needs, and what each scenario adds.
- TroubleshootingFixes for common errors, listed by symptom.
Using the lab
CLI reference
- OverviewInstall, global flags, and a map of every labctl command.
- Lab lifecycleinit, doctor, status, snapshots and reset.
- ScenariosActivate, verify, reset and validate scenarios.
- IncidentsInject reversible faults, run game days and measure the fix.
- Learning paths and challengesGuided paths and timed, auto-graded challenges.
- Apps and servicesBuild, deploy and remove apps, and the services they use.
- Platform componentsInstall, swap and inspect the components the lab runs on.
- TrafficGenerate realistic in-cluster load with k6.
- Compare appsRun one scenario against two apps and read the difference.
- Web UI, API and team modeServe the dashboard and API, expose metrics, turn on auth.
Write your own
- Your first scenarioWrite, validate and run a scenario of your own.
- Scenario schemaThe full scenario.yaml reference: components, checks, parameters.
- Bring your own contentLoad scenarios and faults from your own repository, no fork needed.
- Stability policyWhat the content schemas and Go SDK promise to keep stable.
Project
Looking for something that isn’t here? Design decisions, maintainer runbooks and the test strategy live in the repository. Browse it on GitHub.