Постановка задачи
Сервисы ЕССМ формируют достаточно подробные логи, которые демон Docker сохраняет локально. Чтобы предотвратить переполнение дискового пространства хоста, необходимо настроить ротацию логов Docker.
Решение
Настройки ротации логов контейнеров осуществляется с помощью конфигурационного файла /etc/docker/daemon.json
. Ниже представлен пример конфигурационного файла daemon.json
:
{ "log-driver": "local", "log-opts": { "max-size": "10m", "max-file": "3", } }
- "log-driver" — параметр, определяющий драйвер логирования;
- "log-opts" — секция, определяющая параметры ротации логов;
- "max-size" — максимальный размер лога перед сжатием. Положительное число с модификатором размера ("k", "m" или "g").
- "max-file" — максимальное количество хранящихся лог-файлов.
После внесения изменений в файл /etc/docker/daemon.json
необходимо остановить ЕССМ и перезапустить демон docker:
cd eccm sudo ./compose-tools.sh --stop sudo service docker restart
Чтобы изменения вступили в силу для существующих контейнеров, их необходимо пересоздать.
Пересоздание контейнеров
Остановка identity-provider:
cd <путь до каталога с файлами запуска ECCM 1.10>/identity-provider sudo docker-compose down
Остановка eccm:
cd <путь до каталога с файлами запуска ECCM 1.10>/eccm sudo docker-compose down
Остановка postgres:
cd <путь до каталога с файлами запуска ECCM 1.10>/postgres sudo docker-compose down
Запуск проекта:
cd <путь до каталога с файлами запуска ECCM 1.10> sudo ./compose-tools --pull --start <IP ADDRESS>