docker compose
This commit is contained in:
36
docker/009-compose.md
Normal file
36
docker/009-compose.md
Normal 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`.
|
Reference in New Issue
Block a user