Проверен полностью90 771

Выбор редакцииМониторинг

Uptime Kuma

Uptime Kuma проверяет HTTP, TCP, DNS, ping и другие типы целей, отправляет уведомления и публикует страницы состояния. Для базового запуска достаточно одного контейнера и локального Docker volume.

Обзор

Uptime Kuma — панель мониторинга для домашних серверов, небольших проектов и внутренней инфраструктуры. Она умеет проверять HTTP(S), TCP-порты, DNS, ping, сертификаты и другие цели, а затем отправлять уведомления через множество провайдеров.

Для небольшого инстанса не нужна отдельная база данных: данные сохраняются в локальном Docker volume. Есть русский интерфейс, публичные status pages и встроенный healthcheck контейнера.

Рецепт намеренно не подключает Docker socket. Он не нужен для обычного мониторинга сайтов и портов, а прямой доступ к socket существенно расширяет полномочия контейнера.

Оценка безопасности

Рецепт запускает контейнер без privileged, host network и Docker socket, добавляет no-new-privileges и публикует порт только на 127.0.0.1. Публичный доступ рекомендуется организовывать через HTTPS reverse proxy. Основной известный риск возникает только при отдельном подключении Docker API для мониторинга контейнеров: такой доступ следует выдавать через ограниченный socket proxy, а не прямым монтированием Docker socket.

Отслеживание обновлений

Это сохранённые результаты отдельных проверок, а не данные в реальном времени. Неизвестный статус означает, что проверка ещё не выполнялась.

Новые релизы

Сравнение версии рецепта с последним известным релизом upstream. Это номер версии, а не разбор изменений.

Актуальная версия 2.5.330 авг. 2026 г., 15:42 UTC

Критические уязвимости

Результат отдельного сканирования Docker-образов, а не проверки Compose.

Несовместимые обновления

Новый major находится сравнением номеров версий. Вердикт о совместимости заносится вручную после чтения release notes и порядка миграции.

Не провереноПроверка не выполнялась

compose.yaml

Изменения upstream Compose относительно проверенного рецепта.

Upstream Compose не отслеживаетсяПроверка не выполнялась

Устаревшие Docker-образы

Проверка закреплённых тегов образов на наличие новых версий.

Все образы актуальны30 авг. 2026 г., 15:42 UTC

От наблюдения к действию

План обновления

Рецепт уже закрепляет последний известный релиз. Ниже показаны сохранённые основания для этой версии.

2.5.32.5.3
  1. Открыть основания релиза

    Открыть релиз на GitHub ↗ Ссылка нужна для ревизии и сама по себе не доказывает совместимость.

  2. Проверить границу версий

    Номера версий не пересекают major-границу совместимости. Вердикт о совместимости не записан.

  3. Подготовить смену тегов образов

    Смена тегов образов сейчас не планируется.

  4. Следовать документированной схеме миграции

    Смена тега и перезапуск. Шаги конкретного релиза всё равно берутся из release notes и инструкции по установке.

  5. Защитить точку отката

    Смена версии сейчас не планируется. Рецепт содержит процедуру backup. Restore проверен.

  6. Проверить обновлённый рецепт

    Точная проверка уровня «Проверен полностью» для этой версии записана 2026-08-30.

Прочитать порядок обновления в инструкции по установке ↓

Характеристики

Безопасность и публикация

Уровни установки

Статус показывает, насколько опубликованный рецепт покрывает требования каждого уровня.

Готово

Для дома

Минимальная конфигурация для локальной сети или доступа через VPN.

  • Один сервер
  • Локальный доступ
  • Минимум компонентов

Рецепт закрывает все требования этого уровня.

Готово

Для VPS

Публичная установка с защищённым доступом и резервными копиями.

  • Домен
  • HTTPS через reverse proxy
  • Backup вне сервера

Рецепт закрывает все требования этого уровня.

Не поддерживается

Надёжная

Конфигурация для предсказуемой эксплуатации и наблюдаемости.

  • Отдельная БД
  • Healthcheck
  • Внешний мониторинг
  • Лимиты CPU и памяти

Нужно добавить вручную: отдельная бд, внешний мониторинг, лимиты cpu и памяти.

Собрать под свой сервер

Генератор конфигурации

Ответьте на пять вопросов и скачайте готовый комплект Uptime Kuma.

Работает локально
01 Есть домен?
02 Какой reverse proxy?
03 Архитектура сервера
04 Где хранить данные?

Укажите абсолютный путь для отдельного диска, например /srv/uptime-kuma.

05 Требуется VPN-доступ?

Комплект готов к сборке

Архив создаётся в браузере. Ответы никуда не отправляются.

Скриншоты

Быстрый запуск

Сначала прочитайте полную инструкцию: в ней описаны доступ извне, backup и расположение данных.

Подготовить настройкиcp .env.example .env
Запуститьdocker compose up -d
Проверить состояниеdocker compose ps

Пошаговая инструкция

1. Проверьте сервер Ubuntu или Debian

Минимум: 1 CPU, 512 МБ RAM и 2 ГБ на локальном диске. Рекомендуется 1 ГБ RAM. Нужны Ubuntu 22.04+ или Debian 12+ с Docker Engine и Docker Compose v2.24+. Отдельная база данных не требуется. Не размещайте данные на NFS: upstream рекомендует локальную файловую систему или Docker volume.

docker --version
docker compose version

2. Подготовьте файлы и переменные

Поместите compose.yaml, .env.example, backup.sh, restore.sh и каталог proxy в отдельный каталог:

mkdir -p ~/services/uptime-kuma
cd ~/services/uptime-kuma
cp .env.example .env
chmod 600 .env

В .env заданы закреплённая версия UPTIME_KUMA_VERSION, локальный порт UPTIME_KUMA_PORT, имя volume UPTIME_KUMA_DATA_VOLUME и часовой пояс TZ.

3. Запустите контейнер на VPS

docker compose pull
docker compose up -d
docker compose ps

Образ содержит healthcheck. При первом запуске контейнер может несколько минут иметь статус starting. Порт по умолчанию доступен только на 127.0.0.1.

4. Первоначальная настройка через SSH

ssh -L 3001:127.0.0.1:3001 user@server.example

Откройте http://localhost:3001, создайте администратора и сохраните пароль в менеджере паролей.

Локальная сеть

Без reverse proxy безопаснее оставить localhost bind и использовать SSH-туннель. Если панель должна быть доступна всей доверенной LAN, замените 127.0.0.1 в compose.yaml на конкретный LAN-адрес сервера, например 192.168.1.10. Не используйте 0.0.0.0 и закройте порт 3001 на внешнем интерфейсе firewall.

Домен и HTTPS

Для reverse proxy, установленного непосредственно на host, готовые примеры находятся в proxy/Caddyfile, proxy/nginx.conf и proxy/traefik.yaml. Замените status.example.com своим доменом. Caddy получает сертификат автоматически; для Nginx пример предполагает сертификат Certbot; Traefik использует resolver letsencrypt. После публикации включите в Uptime Kuma параметр Trust Proxy. Все примеры передают WebSocket. Для Traefik в контейнере замените 127.0.0.1 на доступный контейнеру адрес host gateway.

Резервное копирование

Все данные находятся в volume uptime-kuma-data. Запустите ./backup.sh:

chmod +x backup.sh restore.sh
./backup.sh

Скрипт остановит контейнер, создаст архив в ./backups и снова запустит его. Храните копию архива вне сервера.

Восстановление

Восстановление полностью заменяет содержимое volume выбранным архивом:

./restore.sh ./backups/uptime-kuma-YYYYMMDDTHHMMSSZ.tar.gz
docker compose ps

Перед восстановлением скрипт создаёт страховочную копию текущих данных.

Обновление

Создайте backup, прочитайте release notes, измените UPTIME_KUMA_VERSION в .env, затем выполните:

docker compose pull
docker compose up -d
docker compose ps
docker compose logs --tail=100 uptime-kuma

Откат

Верните прежнюю UPTIME_KUMA_VERSION в .env и запустите docker compose pull и docker compose up -d. Если новая версия успела мигрировать базу, сначала верните старый образ, затем восстановите созданный перед обновлением архив через restore.sh. Между major-версиями сверяйтесь с release notes upstream.

Полное удаление

Сохранить данные: docker compose down. Удалить контейнер и все данные безвозвратно:

docker compose down
docker volume rm uptime-kuma-data
rm -rf ~/services/uptime-kuma

Источники: официальная установка и инструкция по обновлению.

Диагностика

Контейнер не становится healthy

Посмотрите состояние и последние сообщения:

docker compose ps
docker compose logs --tail=200 uptime-kuma

На первом старте дождитесь завершения подготовки данных. Также проверьте, что на диске достаточно места и volume доступен для записи.

Страница открывается, но интерфейс теряет соединение

Uptime Kuma использует WebSocket. Проверьте конфигурацию reverse proxy и передачу заголовков Upgrade и Connection. Caddy обрабатывает WebSocket автоматически.

Порт 3001 занят

Измените UPTIME_KUMA_PORT в .env, например на 3101, и пересоздайте контейнер:

docker compose up -d

Если используется reverse proxy на хосте, обновите также его upstream-порт.

После обновления появилась пустая установка

Убедитесь, что используется тот же Docker volume:

docker volume inspect uptime-kuma-data
docker compose config

Не создавайте нового администратора и не удаляйте старый volume, пока не проверите путь к данным и имеющийся backup.

Официальные источники

Последний релиз: 2026-08-22 · GitHub Stars: 90 771 · данные проверены 30 авг. 2026 г., 13:17 UTC

Отказ от ответственности

Fossary — независимый информационный каталог, не связанный с разработчиками представленных приложений. Мы собираем сведения из открытых источников и проверяем опубликованные рецепты, но не разрабатываем, не распространяем и не контролируем эти приложения.

Публикация карточки или статус проверки не являются требованием, навязыванием либо персональной рекомендацией использовать приложение. Вы самостоятельно решаете, подходит ли оно вам, и используете его на свой риск. Мы не гарантируем безопасность, доступность или пригодность приложения и, в пределах, допускаемых законом, не отвечаем за вызванные им потери или ущерб. До установки проверьте лицензию, настройки безопасности, обработку данных и резервное копирование.