Uptime Kuma: мониторинг серверов и сайтов
Uptime Kuma — саморазмещаемая open-source альтернатива UptimeRobot с красивым интерфейсом, уведомлениями в Telegram и поддержкой HTTP, TCP, DNS, Docker и других мониторов.
Установка через Docker
docker run -d --name uptime-kuma -p 3001:3001 -v uptime-kuma:/app/data --restart unless-stopped louislam/uptime-kuma:latestОткройте http://your-server:3001 для первичной настройки.
Docker Compose
version: '3.8'
services:
uptime-kuma:
image: louislam/uptime-kuma:latest
container_name: uptime-kuma
ports:
- "3001:3001"
volumes:
- ./uptime-kuma-data:/app/data
restart: unless-stoppedNginx Reverse Proxy + SSL
server {
listen 443 ssl;
server_name status.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/status.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/status.yourdomain.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}
}Настройка мониторов
- HTTP(S) — проверка сайта, ожидаемый статус 200, keyword match
- TCP Port — проверка доступности порта (MySQL 3306, SSH 22)
- DNS — мониторинг DNS-записей
- Docker Container — статус контейнера
- Ping — ICMP-проверка доступности
Уведомления в Telegram
В настройках добавьте Notification → Telegram:
Bot Token: 123456:ABCdefGHIjklMNO
Chat ID: -1001234567890 # для группы
# Получить Chat ID:
curl "https://api.telegram.org/bot{TOKEN}/getUpdates"Status Page (публичная страница)
Uptime Kuma поддерживает создание красивых публичных Status Page — отображайте статус сервисов для клиентов без доступа к панели администратора.
Интеграции: Uptime Kuma поддерживает уведомления через Slack, Discord, PagerDuty, Email, SMS (Twilio) и более 90 других каналов.