docker compose

This commit is contained in:
dado
2025-07-27 21:30:46 +02:00
parent 7374d91b88
commit fef5f83f26

36
docker/009-compose.md Normal file
View File

@@ -0,0 +1,36 @@
# Compose
`Docker Compose` è uno strumento di orchestrazione per Docker che permette di definire e eseguire applicazioni multi-container utilizzando un singolo file YAML, chiamato `docker-compose.yml`. Questo file contiene tutte le informazioni necessarie per configurare e avviare tutti i servizi dello stack applicativo, incluse le reti e i volumi.
Facilita l'avvio, l'arresto e la gestione dei container.
Come si vede dall'esempio, vi é una corrispondenza 1:1 tra i parametri della linea di comando e il file di configurazione:
```yml
services:
php:
image: 'php:8.1-fpm'
container_name: php
volumes:
- './app:/var/www/html'
nginx:
image: 'nginx:latest'
container_name: nginx
ports:
- 8080:80
- 8443:443
volumes:
- './app:/var/www/html:ro'
- './config/nginx:/etc/nginx/conf.d'
depends_on:
- php
```
È importante notare che tutti i servizi definiti nello stesso file `docker-compose.yml` sono automaticamente collocati nella stessa rete. Questo consente loro di comunicare tra loro senza la necessità di aprire porte specifiche.
Nell'esempio fornito, il container di nginx dipende da quello di php. Di conseguenza, nginx verrà avviato dopo php, garantendo che le dipendenze siano rispettate.
## Gestione dello Stack
Per avviare lo stack Docker, è sufficiente eseguire il comando `docker compose up -d` dalla stessa directory in cui si trova il file docker-compose.yml. Per arrestare i container, utilizzare invece `docker compose down`.