Docker Compose è uno strumento per definire ed eseguire applicazioni multi-container usando un singolo file YAML. Invece di eseguire manualmente molti comandi docker run, descrivi tutti i tuoi servizi (app, database, cache) in docker-compose.yml e avviali insieme con un unico comando.
Il problema che Compose risolve
A real app often has MULTIPLE containers: a web app + a database + a cache + ...
→ manually running each with docker run (ports, networks, volumes, env, dependencies)
is tedious, error-prone, and hard to reproduce/share
→ Compose defines the WHOLE stack in one file → start it all with one command.
