Докер 1.8 был выпущен с опцией вращения журнала. Добавление:
--log-opt max-size=50m
то, когда контейнер запускается, добивается цели. Можно узнать больше в: https://docs.docker.com/engine/admin/logging/overview /
ОСТОРОЖНОСТЬ: Это для докера - составляют версию 2 только
Пример:
version: '2'
services:
db:
container_name: db
image: mysql:5.7
ports:
- 3306:3306
logging:
options:
max-size: 50m
Опции журнала передачи при выполнении контейнера. Пример будет следующим образом
sudo docker run -ti --name visruth-cv-container --log-opt max-size=5m --log-opt max-file=10 ubuntu /bin/bash
, где --log-opt max-size=5m
указывает, что максимальный размер файла журнала, чтобы быть 5 МБ и --log-opt max-file=10
указывает максимальное количество файлов для вращения.
Осторожность: это сообщение касается версий докера < 1.8 (которые не имеют --log-opt
опция)
, Почему Вы не используете logrotate (который также поддерживает сжатие)?
/var/lib/docker/containers/*/*-json.log {
hourly
rotate 48
compress
dateext
copytruncate
}
Настраивают его или непосредственно на Вашем Узле CoreOs или развертывают контейнер (например, https://github.com/tutumcloud/logrotate), который монтирует/var/lib/docker для вращения журналов.