Docker Compose è uno strumento che consente agli utenti di definire ed eseguire applicazioni Docker multi‑contenitore. Con Docker Compose puoi utilizzare un file YAML per configurare i servizi, le reti e i volumi dell’applicazione, permettendo di avviare più contenitori interconnessi e gestiti come un’unica unità.
Docker Compose è stato introdotto nel 2014 come modo per semplificare la gestione di applicazioni Docker multi‑contenitore. Da allora è diventato uno strumento molto diffuso nell’ecosistema Docker, offrendo un metodo semplice ed efficiente per orchestrare i container.
Come funziona Docker Compose
Docker Compose legge un file YAML che descrive i servizi, le reti e i volumi dell’applicazione. Ogni servizio è definito come un contenitore e il file YAML specifica come i contenitori devono essere configurati e come devono comunicare tra loro.
Quando avvii Docker Compose, viene creata una rete per l’applicazione e vengono avviati i contenitori definiti nel file YAML. I contenitori vengono avviati nell’ordine indicato nel file e ciascuno riceve il proprio set di variabili d’ambiente, file di configurazione e altre risorse.
Una volta che i contenitori sono in esecuzione, Docker Compose mette a disposizione una serie di comandi per gestire l’applicazione, come avviare e arrestare i contenitori, scalare i servizi e visualizzare i log.
Utilizzare Docker Compose
Per usare Docker Compose, devi prima creare un file YAML che descriva la tua applicazione. Ecco un esempio di file Docker Compose YAML semplice:
version: '3'
services:
web:
image: nginx
ports:
- "8000:80"
db:
image: postgres
environment:
POSTGRES_PASSWORD: example
In questo esempio abbiamo due servizi: web e db. Il servizio web utilizza l’immagine nginx ed espone la porta 8000 sull’host. Il servizio db utilizza l’immagine postgres e imposta la variabile d’ambiente POSTGRES_PASSWORD.
Per avviare l’applicazione, esegui il comando seguente:
Questo comando legge il file YAML e avvia i contenitori definiti nel file. Puoi quindi accedere al servizio web aprendo un browser e navigando all’indirizzo http://localhost:8000.
Conclusione
Docker Compose è uno strumento potente per gestire applicazioni Docker multi‑contenitore. Con Docker Compose puoi definire la tua applicazione come un insieme di contenitori interconnessi, rendendo più semplice la gestione e la scalabilità. Utilizzando un file YAML semplice per configurare l’applicazione, Docker Compose ti consente di creare, eseguire e gestire facilmente applicazioni complesse basate su container.