monitoreo monitorear listar herramientas ejemplos contenedores comandos logging docker coreos diskspace

logging - monitorear - Los registros del contenedor Docker ocupan todo mi espacio en disco



listar contenedores docker (4)

Estoy ejecutando un contenedor en una VM. Mi contenedor está escribiendo registros de manera predeterminada en el archivo /var/lib/docker/containers/CONTAINER_ID/CONTAINER_ID-json.log hasta que el disco esté lleno.

Actualmente, tengo que eliminar manualmente este archivo para evitar que el disco esté lleno. Leí que en Docker 1.8 habrá un parámetro para rotar los registros . ¿Qué recomendarías como la solución actual?



PRECAUCIÓN: Esto es solo para Docker-compose versión 2

Ejemplo:

version: ''2'' services: db: container_name: db image: mysql:5.7 ports: - 3306:3306 logging: options: max-size: 50m


Pase las opciones de registro mientras ejecuta un contenedor. Un ejemplo será el siguiente

sudo docker run -ti --name visruth-cv-container --log-opt max-size=5m --log-opt max-file=10 ubuntu /bin/bash

donde --log-opt max-size=5m especifica que el tamaño máximo del archivo de registro debe ser de 5 MB y --log-opt max-file=10 especifica el número máximo de archivos para la rotación.


Precaución: esta publicación se relaciona con las versiones de Docker <1.8 (que no tienen la opción --log-opt )

¿Por qué no usas logrotate (que también admite compresión)?

/var/lib/docker/containers/*/*-json.log { hourly rotate 48 compress dateext copytruncate }

Configúrelo directamente en su nodo CoreOs o implemente un contenedor (por ejemplo, https://github.com/tutumcloud/logrotate ) que monta / var / lib / docker para rotar los registros.