Как очистить логи докер контейнера?

Для очистки логов Docker-контейнера можно использовать несколько подходов. Ниже приведены несколько методов, которые вы можете использовать в зависимости от ваших потребностей:

1. Очистка логов при запуске контейнера:
Если вы хотите, чтобы логи удалялись автоматически каждый раз при запуске вашего контейнера, вы можете добавить флаг --log-opt max-size=SIZE при запуске контейнера. Вместо SIZE укажите размер лог-файла в формате [число][B|K|M|G]. Например, --log-opt max-size=10M ограничит размер лог-файла до 10 мегабайт.

2. Очистка логов вручную:
Если вы хотите управлять очисткой лог-файлов вручную, вы можете найти расположение файлов с логами контейнера и удалить их. По умолчанию Docker хранит логи контейнеров в /var/lib/docker/containers/<CONTAINER_ID>/<CONTAINER_ID>-json.log, где <CONTAINER_ID> - идентификатор вашего контейнера. Чтобы очистить эти лог-файлы, просто удалите их с помощью команды rm. Например, sudo rm /var/lib/docker/containers/<CONTAINER_ID>/<CONTAINER_ID>-json.log.

3. Очистка старых логов:
Если вы хотите удалять старые лог-файлы контейнера, вы можете использовать инструменты удаления старых файлов, такие как logrotate. logrotate позволяет настраивать правила вращения файлов журналов, определяя, когда и какие журналы удалить. Настройте logrotate для удаления старых лог-файлов Docker.

4. Настройка удаления логов в Docker Daemon:
Настройки удаления логов можно определить в Docker Daemon, чтобы процесс удаления выполнялся автоматически. Для этого отредактируйте файл конфигурации Docker Daemon (/etc/docker/daemon.json) и добавьте следующую опцию:

   {
     "log-opts": {
       "max-size": "10m",
       "max-file": "3"
     }
   }

В этом примере мы устанавливаем максимальный размер файла в 10 мегабайт и максимальное количество файлов журналов в 3. После изменения конфигурации перезапустите Docker Daemon.

Важно отметить, что удаление лог-файлов является обратимой операцией, поэтому перед удалением убедитесь, что вы не потеряете данные, которые могут быть полезными для диагностики проблем или аудита.