A real application often has several parts: a web server, a database, a cache, background workers. A Docker Compose file (docker-compose.yml) describes which containers are needed, how they connect, and which ports and volumes they use.
The whole environment starts with one command, and the infrastructure is effectively documented — the file lives in Git and every change is visible.
Example
One docker-compose.yml with the website, Nginx and a form mail service — the test server runs the same file as production.