5 бесплатных сервисов для вашего docker сервера
В этой статье мы рассмотрим 5 программных сервисов, которые вы можете установить через Docker для облегчения обслуживания ваших серверов. Этот программный стек - Must Have для небольшой инфраструктуры, использующей Docker (Swarm).
1. Watchtower
Этот программный пакет автоматически следит за обновлениями образов ваших контейнеров. Если для вас критически важно поддерживать самые свежие версии ПО в вашем окружении, Watchtower будет обновлять контейнеры без вашего участия.
Сервис устанавливается готовым к работе и не требует какой-либо настройки. В случае же если вы хотите исключить какие-то контейнеры из списка автоматического обновления, вам нужно добавить лейбл исключения в описание каждого из них:
labels:
com.centurylinklabs.watchtower.enable: «true"
У меня почему-то даже с этим лейблом всё продолжало автоматически обновляться :)
2. Scrutiny
Отдельный контейнер Scrutiny предназначен для мониторинга S.M.A.R.T. с Web-интерфейсом. Сервис хранит историю изменения параметров HDD/SSD в сервере и позволяет настраивать диапазоны изменения характеристик, используя базу данных неисправностей HDD. То есть, с его помощью можно предсказывать выход из строя накопителей и оперативно их заменять.
При установке через Docker в конфигурации нужно прописывать путь до накопителей, которые мониторятся, а при инсталляции на хост сервис обнаружит все диски автоматически. Для оповещения о проблемах доступны E-Mail, Telegram, Discord, Webhooks, IFTTT и другие методы. В общем, пропустить поломку диска не удастся.
3. Uptime Kuma
Извините за каламбур, но Uptime Kuma - это сервис для мониторинга доступности сервисов. Поддерживаются различные методы опроса: http(s), ping, push, dns и другие. Этот пакет имеет очень удобный веб-интерфейс настройки, поддерживает десятки методов уведомления (среди которых Telegram, Discord, Microsoft Teams и т.д.)
Для упрощения мониторинга сервисов на самом хосте, контейнер Uptime Kuma лучше запускать с внешней сетью.
4. Dozzle
Dozzle - это простое приложение позволяет легко читать логи запущенных контейнеров в едином окне для оперативного траблшутинга. Это намного быстрее, чем через Portainer или командную строку, особенно если надо пробежаться сразу по списку из десятка контейнеров.
Dazzle оптимизирована для больших программных стеков, и может искать контейнеры по именам, скачивать логи, показывать загрузку CPU/Mem и использовать RegExp для содержания файлов журналов.
5. Doku
Небольшое приложение Doku предназначено для мониторинга, места, занимаемого на дисках вашими проектами в Docker. Оно выводит статистику по образам, томам, контейнерам и логам, так что если вдруг резко место на дисках стало пропадать - переходим в веб-интерфейс Doku и смотрим, сколько занимают наши проекты. Зачастую проблема кроется в логах контейнеров, которые легко разрастаются до нескольких гигабайт.
При всей своей милоте, Doku имеет серьёзную проблему - этот пакет потребляет слишком много процессорных ресурсов, поэтому на слабых серверах имеет смысл держать его выключенным, и запускать по необходимости.
Михаил Дегтярёв (aka LIKE OFF)
15/01.2023