- Dozzle пропонує легкий веб-інтерфейс без урахування стану для перегляду журналів контейнерів у режимі реального часу, споживаючи мінімальні ресурси.
- Інструмент дозволяє фільтрувати журнали за допомогою SQL з DuckDB та налаштовувати автоматичні сповіщення через вебхуки про критичні помилки.
- Його можна легко розгорнути за допомогою Docker Compose або Kubernetes, забезпечуючи доступ через автентифікацію та зворотні проксі-сервери.
Кожен, хто працює з морськими контейнерами, знає, що спроба відстежити, що відбувається всередині них, може швидко перетворитися на кошмар. В ідеалі, ви мали б змогу... Моніторинг журналів Docker за допомогою Dozzle щоб не вбити півдюжини відкритих терміналів, запускаючи команду docker logs -f для кожного з них і молячись про цю невловиму помилку серед тисяч рядків звичайного тексту, які нічого не говорять.
Дозл Це інструмент з відкритим кодом Він надзвичайно легкий і передає всю цю інформацію до браузера. Замість того, щоб мучитися з консоллю, у вас є чиста та візуальна панель, де все відбувається в режимі реального часу, що дозволяє вам зосередитися на вирішенні проблеми, а не витрачати час на її пошук.
Що ж таке Dozzle і чому він такий цікавий?
По суті, Dozzle — це веб-переглядач журналів, призначений для безпроблемного моніторингу виводу ваших Docker-контейнерів. На відміну від таких гігантів, як ELK Stack або Grafana Loki, які потребують власної інфраструктури та споживають величезну кількість пам'яті, Dozzle обирає... бездержавна філософія.
Це означає, що програма не зберігає жодних даних на диску; вона просто підключається до API хоста Docker і передає журнали безпосередньо на ваш екран. Коли ви закриваєте вкладку, потокове передавання зупиняється і не залишає слідів. Ця архітектура пропонує значні переваги: споживання оперативної пам'яті незначне, зображення Докер Він ледве важить близько 10 МБ А швидкість відгуку миттєва, що безцінно під час налагодження в реальному часі. Усе це робить моніторинг логів Docker за допомогою Dozzle простим та ефективним завданням.
Швидке встановлення для початку роботи
Перш ніж почати моніторинг журналів Docker за допомогою Dozzle, вам потрібно запустити інструмент. Гарна новина: це дуже просто. Якщо ви хочете швидко спробувати, ви можете виконати просту команду у своєму терміналі. Найважливіше тут те, що Збірка сокета Docker (/var/run/docker.sock), який є мостом, що дозволяє Dozzle взаємодіяти з демоном Docker для читання журналів та перерахування контейнерів.
Якщо ви віддаєте перевагу чомусь більш організованому, ідеальним варіантом буде Docker ComposeВам просто потрібно додати сервіс до вашого .yml-файлу, зіставивши порт 8080 та том сокета. Я рекомендую додати змінну DOZZLE_FILTER=status=виконується щоб вимкнені контейнери не заповнювали бічну панель шумом.
Навігація інтерфейсом та поради щодо використання
Інтерфейс настільки інтуїтивно зрозумілий, що не потребує інструкції. Ліворуч у вас є список контейнерів із рядком пошуку. Натиснувши на один із них, потокове передавання Він з'являється миттєво, а Dozzle форматує JSON з кольорами відповідно до рівня журналу (INFO, WARN, ERROR).
Для мікросервісів, розділений вигляд Це дозволяє порівнювати часові позначки з різних контейнерів і бачити, як невдалий запит API впливає на базу даних.
Розширені можливості: SQL та сповіщення
Починаючи з версії 10, Dozzle інтегрується DuckDB для прямих SQL-запитів у браузері, наприклад, фільтрація помилок за хвилину або за HTTP-кодом.
З вебхуки Ви налаштовуєте сповіщення для Slack, Discord або NTFy для таких подій, як використання процесора понад 80% або текст "FATAL ERROR". Це дозволяє перейти від реактивного до проактивного моніторингу.
Розгортання безпеки та виробничих систем
Примітка: За замовчуванням Dozzle не має пароля. Під час доступу до сокета Docker, якщо він відкритий, необхідно налаштувати автентифікацію за допомогою users.yml та bcrypt.
У продакшені він використовує зворотний проксі-сервер та налаштовує WebSockets для потоків журналів. Він сумісний з Kubernetes та DaemonSets.
Альтернативи та обмеження системи
Оскільки система не має статусу, немає можливості зберігати історичні дані. Для минулого аудиту потрібна спостережливість за допомогою OpenTelemetry або ELK.
Ви також можете використовувати docker logs --since --tail o драйвери ведення журналу як системний журнал.
Коротше кажучи, моніторинг логів Docker за допомогою Dozzle трансформує роботу з контейнерами, централізуючи моніторинг у браузері, за допомогою запитів та сповіщень у режимі реального часу.
Редактор, що спеціалізується на технологіях та питаннях Інтернету з більш ніж десятирічним досвідом роботи з різними цифровими медіа. Я працював редактором і творцем контенту для компаній електронної комерції, комунікацій, онлайн-маркетингу та реклами. Я також писав на веб-сайтах з економіки, фінансів та інших секторів. Моя робота також є моєю пристрастю. Тепер через мої статті в Tecnobits, я намагаюся вивчати всі новини та нові можливості, які щодня пропонує нам світ технологій для покращення нашого життя.
