Knowledgebase

Introduzione a Docker Compose

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:

docker-compose up

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.