Ротация журналов контейнера Docker в Linux

Ротация журналов контейнера Docker в Linux

Рубрики:

Docker, Linux

Метки:

Docker, linux

Docker — программное обеспечение, предназначенное для создания, развертывания и запуска приложенийКонтейнер — форма виртуализации, позволяющая упаковать приложение и его зависимости в последовательную и изолированную среду. Каждый контейнер имеет свой файл журнала (лог-файл), который содержит сведения о результатах работы приложений, а также данные системного уровня (ошибки, данные отладки, предупреждения и так далее). Поскольку лог-файлы со временем могут накапливать большое количество неактуальной информации, рекомендуется регулярно выполнять их ротацию.

В этой статье мы расскажем, как настроить ротацию лог-файлов контейнеров Docker в ОС Linux.

Содержание:

  1. Настройка ротации лог-файла конкретного контейнера
  2. Выполнение ротации журналов в Docker Compose
  3. Глобальная настройка ротации журналов Docker
  4. Выводы

Настройка ротации лог-файла конкретного контейнера

Процесс ротации журнала необходимо настроить при создании контейнера Docker. Для этого можно воспользоваться следующей командой:

 

Где:

  • docker run — команда, которая используется для создания и запуска нового контейнера на основе указанного образа;
  • --name <container-name> — необязательная опция, которая позволяет задать контейнеру название (если не использовать этот параметр, Docker автоматически сгенерирует случайное название);
  • --log-driver=<value> — опция, в качестве значения которой нужно указать драйвер логирования для контейнера (например, json-file);
  • --log-opt max-size=<value> — параметр, для которого следует указать максимальный размер лог-файла (если размер журнала достигнет заданного значения, Docker выполнит ротацию);
  • --log-opt max-file=<value> — опция, позволяющая определить максимальное количество файлов журнала, которые нужно сохранять (при превышении указанного числа самый старый файл будет удален автоматически);
  • <image-name> — название образа, на основе которого будет запущен контейнер.

Читайте также: Как очистить содержимое лог-файла контейнера Docker в Linux.

Для примера запустим контейнер с названием mystifying_joliot на основе образа hello-world. И настроим процесс ротации лог-файлов следующим образом:

  • драйвер логирования — json-file;
  • максимальный размер лог-файла — 10 Мб;
  • хранить до 3 журналов.

 

Log Rotation for a Single Container

Выполнение ротации журналов в Docker Compose

Docker Compose — это инструмент для описания и управления многоконтейнерными приложениями на Docker. Он позволяет настраивать все сервисы, сети и хранилища данных программы в одном файле docker-compose.yml. Этот документ является «чертежом» для запуска приложения.

Читайте также: Как удалить образы, контейнеры и тома Docker.

Если Вы используете Docker Compose, то настроить ротацию журналов для всех контейнеров одного приложения можно в файле docker-compose.yml. Для этого откройте данный текстовый документ в любом текстовом редакторе и вставьте в него следующий код:

 

Важно: используемые параметры и их значения совпадают с тем, что применялись в команде представленной ранее.

Log Rotation in Docker-Compose

Сохраните внесенные изменения и закройте файл docker-compose.yml. Затем выполните в терминале следующую команду, чтобы применить настройки ротации журналов:

 

Читайте также: Как управлять приложениями внутри контейнера Docker.

Глобальная настройка ротации журналов Docker

У Вас есть возможность установить единый процесс ротации журналов для всех контейнеров Docker в операционной системе. Для этого нужно записать в файл настроек /etc/docker/daemon.json код:

 

Global Log Rotation Settings

После чего сохраните изменения и перезапустите службу Docker с помощью следующей команды:

Выводы

Мы показали, как настроить ротацию лог-файлов контейнеров Docker в операционной системе Linux. Надеемся, что этот материал был полезным для Вас!

Спасибо за время, уделенное прочтению статьи!

Если возникли вопросы — задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасностиполный курс по кибербезопасностикурсы DevNet / DevOps (программируемые системы) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Рубрики:

Docker, Linux

Метки:

Docker, linux

Больше похожих постов

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики