Dockprom - Готовый комплект мониторинга для Docker-инфраструктуры
Когда контейнеров много, а глаз — мало
Знакомая ситуация? Развернули десяток контейнеров, сервер вроде работает, но непонятно:
- Насколько загружены процессоры?
- Хватает ли памяти?
- Не «жрут» ли какие-то сервисы дисковое пространство?
Именно для таких случаев Stefan Prodan собрал dockprom — готовый комплект мониторинга Docker-хостов и контейнеров на базе проверенных инструментов.
Что в коробке?
Dockprom — это предварительно настроенная связка из:
- Prometheus — сбор метрик
- Grafana — визуализация данных
- cAdvisor + NodeExporter — сбор данных о контейнерах и хосте
- AlertManager — система оповещений
Главное преимущество? Всё работает «из коробки» — достаточно запустить docker-compose up.
Три кита мониторинга
1. Готовые дашборды Grafana
Проект включает три предустановленных дашборда:
-
Docker Host — мониторинг ресурсов сервера:
- Загрузка CPU, памяти, дисков
- Сетевой трафик
- Системная нагрузка

-
Docker Containers — метрики по каждому контейнеру:
- Потребление CPU/RAM
- Сетевой ввод-вывод
- Статус работы

-
Monitor Services — здоровье самого стека мониторинга
2. Готовые правила алертинга
В комплекте идут предустановленные правила для AlertManager, которые отслеживают:
- Падение сервисов мониторинга
- Высокую загрузку CPU (>1.5 в течение 30 сек)
- Нехватку памяти (>85% использования)
- Проблемы с дисковым пространством
- Падение конкретных контейнеров (например, Jenkins)
Пример алерта на высокую загрузку CPU:
alert: high_cpu_load
expr: node_load1 > 1.5
for: 30s
labels:
severity: warning
annotations:
summary: "Server under high load"
description: "Docker host is under high load..."
3. Интеграция с популярными сервисами
AlertManager можно настроить на отправку уведомлений в:
- Slack
- Pushover
- Webhook-сервисы
Пример конфигурации для Slack:
receivers:
- name: 'slack'
slack_configs:
- channel: '#alerts'
api_url: 'https://hooks.slack.com/services/...'
Как это работает под капотом?
Архитектура проекта проста и эффективна:
- NodeExporter собирает метрики хоста
- cAdvisor мониторит контейнеры
- Prometheus агрегирует данные
- Grafana визуализирует через готовые дашборды
- AlertManager реагирует на аномалии
Все компоненты работают в отдельных контейнерах и связаны через Docker network.
Когда особенно пригодится?
- Для локальной разработки — видите нагрузку от своих контейнеров в реальном времени
- На staging-серверах — быстро находите «прожорливые» сервисы
- В продакшене — оперативно реагируете на проблемы до того, как они станут критичными
Настройка за 5 минут
- Клонируем репозиторий:
git clone https://github.com/stefanprodan/dockprom
cd dockprom
- Запускаем (пароль по умолчанию — admin/admin):
docker-compose up -d
- Открываем в браузере:
- Grafana: http://localhost:3000
- Prometheus: http://localhost:9090
- AlertManager: http://localhost:9093
Вывод: стоит ли пробовать?
Dockprom — отличное решение для тех, кто:
- Не хочет тратить время на настройку мониторинга с нуля
- Ценит готовые дашборды и правила алертинга
- Работает с Docker и хочет держать руку на пульсе
Проект активно поддерживается, имеет более 6k звезд на GitHub и лицензию MIT. Если вы еще не мониторите свою Docker-инфраструктуру — самое время начать с этого готового решения.
P.S. Не забудьте сменить пароль по умолчанию перед использованием в продакшене!
