Потестировал очень классную систему просмотра логов в Docker контейнерах Dozzle. Сначал... — 18 сентября 2026 г. в 06:11:02.150
Потестировал очень классную систему просмотра логов в Docker контейнерах Dozzle. Сначала мельком на неё глянул, подумал, ну очередной просмотрщик логов, их много разных есть. Но на деле там чуть больше, чем просто просмотр. Хотя и он сделан удобно. Сервис очень понравился, так что если работаете с контейнерами, рекомендую обратить внимание. Расскажу, как Dozzle работает и что умеет делать: ▪️Подключается к docker.sock и получает доступ ко всем контейнерам хоста. ▪️Можно запустить агента на удалённом хосте и подключаться к нему. То есть один сервер с Dozzle может собирать логи с удалённых хостов. ▪️Умеет выводить как логи одного контейнера, так и смешанные логи нескольких контейнеров в одном потоке. ▪️При просмотре логов можно выбрать нужную строку и создать правило для отправки уведомлений при появлении этих строк. У правил гибкий синтаксис, можно в режиме реального времени смотреть, какие строки попадают под настроенное правило. ▪️Уведомления есть не только по содержимому логов, но и по некоторым событиям - запуск или остановка контейнера, исчерпание ресурсов хоста и т.д. ▪️Уведомления отправляются по webhook. ▪️Красивый и функциональный веб интерфейс. ▪️Есть поддержка K8s для просмотра логов подов. У меня есть хост с контейнерами Immich, куда часто приходится заглядывать в логи, особенно, когда меняешь параметры ИИ и делаешь переиндексацию, или выполняешь обновление. Решил туда на пробу и поставить Dozzle. Благо, делается это в одно действие: # docker run -d -v /var/run/docker.sock:/var/run/docker.sock:ro -v dozzle_data:/data -p 8080:8080 --name dozzle amir20/dozzle:latest Дальше идём на порт сервера 8080 и смотрим логи. Там можно пользователя создать, настроить аутентификацию, а можно просто сразу посмотреть логи без всего этого. Управление настройками можно выполнять через переменные. Например, для работы в K8s надо добавить DOZZLE_MODE=k8s. По умолчанию Dozzle собирает анонимную статистику. Отключить её можно параметром DOZZLE_NO_ANALYTICS=true. Все параметры перечислены в документации. Для сбора информации с других хостов, на них надо запустить агентов, примерно так: # docker run -v /var/run/docker.sock:/var/run/docker.sock:ro -p 7007:7007 amir20/dozzle:latest agent А на сервере к ним подключаться так: # docker run -p 8080:8080 amir20/dozzle:latest --remote-agent 192.168.137.5:7007 Если агентов много, их можно объединить в переменной: DOZZLE_REMOTE_AGENT=192.168.137.5:7007,192.168.137.10:7007 Хосты можно объединять в группы: # docker run -p 8080:8080 amir20/dozzle:latest \ --remote-agent 192.168.137.5:7007|web-1|Production \ --remote-agent 192.168.137.6:7007|web-2|Production \ --remote-agent 192.168.137.7:7007|dev-1|Development У продукта нормальная документация, где все небольшие возможности описаны. Панелька мне понравилась. Оставлю, буду пользоваться. Рекомендую хороший обзор, кого заинтересовало. Я сначала даже не заметил, что Dozzle умеет уведомления по событиям в логах слать. Увидел в обзоре. #docker #logs