Uptime Kuma – это простой, но мощный инструмент мониторинга времени работы. Он позволяет отслеживать каждый сервис, размещенный в локальной сети или в Интернете.
В этой статье мы покажем, как установить и развернуть Uptime Kuma в локальной сети с помощью Ubuntu и Docker Мы также покажем, как настроить экземпляр Uptime Kuma для отправки уведомлений о состоянии в Telegram
Почему стоит использовать Uptime Kuma?
Uptime Kuma может отслеживать и пинговать веб-серверы, а также проверять состояние контейнеров Docker Это делает Uptime Kuma идеальным универсальным веб-порталом для всех ваших сетевых сервисов.
Одним из самых больших преимуществ Uptime Kuma является то, что по умолчанию он поставляется с надежной системой уведомлений. Это означает, что вы можете настроить монитор времени работы на автоматическую отправку сообщений по различным каналам при обнаружении аномалий.
Установка Uptime Kuma
Получение Docker и Docker Compose
Сначала получите ключ подписи GPG для репозиториев Docker и Docker Compose:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg
Создайте новый файл репозитория для Docker в папке «/etc/apt/sources.list.d/»
sudo nano /etc/apt/sources.list.d/docker.list
Вставьте следующую строку кода в новый файл репозитория:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
Обновите репозиторий пакетов для вашей системы Ubuntu:
sudo apt update && sudo apt upgrade
Установите пакет Docker и Docker Compose вместе с их зависимостями:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git
Убедитесь, что ваш текущий пользователь имеет необходимые привилегии для запуска Docker и Docker Compose:
sudo usermod -aG docker ramces
Получение и сборка Uptime Kuma
Создайте новый каталог для Docker-контейнера Uptime Kuma. В ней будет находиться файл рецепта для вашего экземпляра:
mkdir uptime-kuma && cd ./uptime-kuma
Создайте новый файл «docker-compose.yml» с помощью вашего любимого текстового редактора:
nano ./docker-compose.yml
Вставьте следующий блок кода в новый файл Compose:
--- version: "3.8" services: uptime-kuma: image: louislam/uptime-kuma:1 container_name: uptime-kuma volumes: - uptime-kuma:/app/data ports: - 3001:3001 restart: always volumes: uptime-kuma: null
Создайте Docker-контейнеры для вашего нового экземпляра Uptime Kuma:
sudo docker compose up -d
Создание обратного прокси для Uptime Kuma с помощью Nginx
Мы создадим обратный прокси в Nginx, чтобы вы могли получить доступ к Uptime Kuma по общедоступному URL.
Создайте новый файл конфигурации сайта Nginx с помощью вашего любимого текстового редактора:
sudo nano /etc/nginx/sites-available/uptimekuma
Напишите следующий блок кода в новом файле конфигурации сайта:
server { server_name uptime.myvpsserver.top; 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 X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; } }
Свяжите файл конфигурации сайта с папкой «sites-available» Nginx с каталогом «sites-enabled»:
sudo ln -s /etc/nginx/sites-available/uptimekuma /etc/nginx/sites-enabled
Перезапустите демон сервера Nginx чтобы применить новые настройки:
sudo systemctl restart nginx
Установка SSL-сертификата
Для начала необходимо убедиться, что в вашей системе установлен и работает основной пакет snap:
sudo snap install core
Установите snap для certbot от Electronic Frontier Foundation. Это небольшой инструмент, который автоматически запрашивает и поддерживает SSL-сертификат вашего обратного прокси:
sudo snap install certbot --classic
Проверьте работоспособность certbot, подписав вашу новую установку certbot на EFF:
sudo certbot register --agree-tos -m ramces@email.invalid
Запросите новый SSL-сертификат для вашего нового обратного прокси:
sudo certbot --nginx -d uptime.myvpsserver.top
Настройка Uptime Kuma и добавление мониторов
Проверьте работоспособность вашей установки Uptime Kuma на обратном прокси, перейдя по его адресу в веб-браузере.
Заполните форму данными, необходимыми для новой учетной записи администратора, и нажмите кнопку «Создать», чтобы продолжить работу с экземпляром.
Нажмите кнопку «Добавить новый монитор» в левом верхнем углу страницы.
В результате на текущей странице откроется новое подокно, в котором можно указать тип сервиса, который необходимо контролировать. Например, изменив значение «Monitor Type» с «HTTP» на «TCP Port», вы создадите монитор, который будет проверять, открыт ли в данный момент определенный порт на машине.
Заполните данные о машине, которую вы хотите контролировать.
Прокрутите страницу вниз, затем нажмите «Save», чтобы запустить новый монитор.
Настройка внешних уведомлений для Uptime Kuma
Перейдите на главную страницу вашего экземпляра Uptime Kuma и нажмите на значок пользователя в правом верхнем углу страницы.
Выберите пункт «Настройки» в выпадающем меню страницы.
В новом подокне страницы выберите категорию «Уведомления».
Создание службы уведомлений Telegram
Нажмите кнопку «Настроить уведомление». По умолчанию откроется небольшое окно, в котором можно связать и создать бота-уведомление с помощью учетной записи Telegram
Задайте имя для нового уведомления, затем нажмите ссылку BotFather в текстовом поле «Bot Token».
Нажмите кнопку «Отправить сообщение» на странице BotFather в Telegram
Примечание: Кнопка «Отправить сообщение» – это специфическая для Telegram ссылка, которая будет работать только в том случае, если Telegram запущен на вашем компьютере.
В результате откроется новое окно чата, в котором вы можете использовать BotFather для создания своего бота-уведомления. Напишите «/newbot» и нажмите Enter.
Укажите имя бота, который вы связываете с вашим экземпляром Uptime Kuma.
Напишите подходящее имя пользователя для вашего нового бота уведомлений. Обратите внимание, что BotFather не будет принимать никаких специальных символов, кроме символа подчеркивания (_).
Щелкните по тексту, выделенному BotFather, чтобы скопировать его в буфер обмена.
Проверьте работоспособность нового бота, найдя его имя пользователя и начав с ним разговор.
Вернитесь в свой экземпляр Uptime Kuma, затем вставьте приватный токен бота в текстовое поле «Bot Token».
Нажмите кнопку «Auto Get» под текстовым полем «Chat ID».
Прокрутите окно Uptime Kuma вниз, затем нажмите кнопку «Test», чтобы проверить, может ли Uptime Kuma взаимодействовать с вашим новым ботом.
Нажмите кнопку «Save», чтобы зафиксировать изменения в Uptime Kuma.
Комментарии (0)