Per impostazione predefinita, Docker non limita le dimensioni dei log JSON dei container, portando rapidamente all'esaurimento dello spazio su disco dell'host.
Configurazione globale /etc/docker/daemon.json:
JSON
{
"log-driver": "json-file",
"log-opts": {
"max-size": "50m",
"max-file": "3"
}
}Applicazione:sudo systemctl restart docker
Configurazione specifica in docker-compose.yml (per singolo container):
YAML
services:
database:
image: postgres:16-alpine
logging:
driver: "json-file"
options:
max-size: "20m"
max-file: "2"In questo modo, ogni container conserva al massimo 40-150 MB di cronologia, eliminando i file più vecchi automaticamente.