1
0
mirror of https://github.com/docker/docs.git synced 2026-10-25 06:09:46 +03:00
Files
docs/content/guides/lab-compose-quickstart.md
David Karlsson f02e2a5633 Revamp the guides section: taxonomy, single-page structure, and new landing/filter UX (#25338)
## What

A full revamp of the `/guides` section — taxonomy, structure, and UX.

Preview: https://deploy-preview-25338--docsdocker.netlify.app/guides/

### Taxonomy & structure
- Replaces the sprawling 24-tag set with a focused 9-tag taxonomy
aligned to use case / SDLC: **Languages & frameworks, AI, Testing,
CI/CD, Security, Databases, Deployment, Admin, Hands-on labs**.
- Removes the languages taxonomy entirely (`data/languages.yaml` and all
`languages:` front matter).
- Collapses all multi-page guide series into single pages, with aliases
so old sub-page URLs continue to resolve.
- Deletes redirect-only shim pages and flattens directory-wrapped single
pages.

### Landing page (`/guides/`)
- A clean index: hero, then category sections listing each guide as a
plain **title / summary** row.
- **Browse rail** (sticky, left): click a topic to filter the page to
just that topic's guides; "All guides" resets. A count + Clear bar
appears while filtering.
- **Text filter**: instant client-side search over title, summary, and
tags. Topic filter and text search are mutually exclusive and share the
same flat-list view.
- No more "Featured guides" section.

### Guide content pages
- Removes the left sidebar for the guides section (mobile drawer kept).
- Centered reading column (`92ch`) with the TOC taking the remaining
width.
- Summary rendered as a lead paragraph under the h1.
- TOC scrollbar auto-hides until hover; breadcrumbs render at a
consistent size inside and outside `prose`.

## Notes
- Deep full-text search across guide bodies is still handled by the
existing site-wide Pagefind (⌘K); the landing filter is the fast
metadata-narrowing surface.
- `series.html` is retained — it's still used by `get-started` pages.

## Validation
- Site builds clean locally (Hugo dev server, no errors / broken refs).
- All collapsed sub-page URLs redirect via aliases.

## Follow-ups

- Prune guides that we no longer need/want
- Tighten the guides that span too many concepts (e.g. language guides;
remove cicd/deploy/sscs)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-01 10:47:10 +02:00

2.6 KiB

title, linkTitle, description, summary, keywords, params
title linkTitle description summary keywords params
Lab: Docker Compose Quickstart Lab: Docker Compose Quickstart Build a multi-container Flask and Redis application from scratch using Docker Compose. Learn health checks, watch mode, named volumes, and multi-file configurations. Hands-on lab: Define and run a multi-container app with Docker Compose. Progress from a bare compose.yaml through health checks, live development with watch mode, data persistence, and modular Compose file composition. Docker, Compose, multi-container, Flask, Redis, watch mode, volumes, lab, labspace
tags time
labs
45 minutes

Build a Python Flask and Redis hit-counter app using Docker Compose, starting from a bare compose.yaml and progressively adding production-quality features at each step.

Launch the lab

{{< labspace-launch image="dockersamples/labspace-compose-quickstart" >}}

What you'll learn

By the end of this Labspace, you will have completed the following:

  • Define a multi-service application in a compose.yaml file and manage it with Compose commands
  • Control service startup order using health checks and depends_on conditions
  • Iterate on code without manual rebuilds using Compose watch mode
  • Persist data across container restarts with named volumes
  • Modularize a stack across multiple files using the include directive
  • Use config, logs, and exec to inspect and debug a running stack

Modules

# Module Description
1 Introduction Tour the starter app and verify the environment
2 Defining Services Write the first compose.yaml and bring up the Flask and Redis stack
3 Health Checks & Startup Order Add a Redis healthcheck and depends_on to eliminate race conditions
4 Live Development with Watch Mode Configure watch mode to sync code changes without manual rebuilds
5 Persistence & Debugging Add a named volume so Redis data survives docker compose down
6 Using Multiple Compose Files Extract Redis into infra.yaml and compose files with include
7 Additional Commands Use config, logs -f, and exec to inspect the running stack
8 Recap Review what was built and explore next steps