# Guide

Each page solves one task. Skim for the one you need.

- [Multi-stage builds](../../docs/guide/multi-stage-builds.md) copies artifacts from a build stage into a slim final image.
- [BuildKit mounts](../../docs/guide/buildkit-mounts.md) scopes cache, secret, and bind mounts to the commands that need them.
- [Smart apt](../../docs/guide/smart-apt.md) installs packages, PPAs, and third-party repos without hand-writing `apt-get update`.
- [The run builder](../../docs/guide/run-builder.md) composes one `RUN` from Python, with dynamic commands, directory scoping, and file redirects.
- [Reusable helpers](../../docs/guide/reusable-helpers.md) factors repeated setup into a context manager.
- [Render from the CLI](../../docs/guide/render-from-the-cli.md) renders a recipe from the command line or from Python.

If you are new to docker-dsl, start with [Getting Started](../getting-started/).
