- Uptime Kuma — це інструмент з відкритим кодом, який дозволяє контролювати доступність сервісів за допомогою HTTP, TCP, DNS та Ping.
- Розгортання легко здійснюється за допомогою контейнерів Docker або Docker Compose, що забезпечує збереження даних на локальних томах.
- Система інтегрує понад 90 каналів сповіщень, виділяючи Telegram та Discord для отримання сповіщень у режимі реального часу.
Якщо у вас вдома невеликий сервер, НАН Незалежно від того, чи керуєте ви кількома веб-сайтами, чи ні, ви оціните душевний спокій, який приходить зі знанням того, що все працює належним чином, без необхідності перевіряти кожні п'ять хвилин. Іноді ми припускаємо, що оскільки комп'ютер увімкнено, служба відповідає, але насправді контейнер може працювати, поки базова програма вийшла з ладу або зависла, залишивши нас у скрутному становищі. На щастя, у нас є можливість Встановіть Uptime Kuma з Docker для моніторингу ваших сервісів та вебсайтів.
Час безперебійної роботи Кума Це перлина з відкритим кодом, яка дозволяє нам контролювати наші сервіси без необхідності налаштовувати складну корпоративну інфраструктуру. Це ідеальний варіант для тих, хто шукає щось потужніше, ніж простий ping, але не хоче клопоту з налаштуванням Prometheus або оплатою дорогих щомісячних підписок. По суті, це... цілодобовий охоронець що надсилає нам сповіщення на мобільний телефон, щойно щось перестає реагувати.
Передумови для розгортання
Перш ніж розпочати встановлення чогось, нам потрібно підготувати ґрунт. Найголовніше — мати сервер, який має Docker та Docker Compose тепер працюютьЯкщо у вас їх немає, ви можете швидко встановити їх на дистрибутивах, таких як Ubuntu або Debian, за допомогою офіційного скрипта Docker. Що стосується ресурсів, Uptime Kuma напрочуд легкий; скромного VPS з 1 віртуальним процесором та 1 ГБ оперативної пам'яті буде більш ніж достатньо, оскільки система зазвичай споживає близько 200 МБ оперативної пам'яті навіть із сотнею активних моніторів.
Ще один момент, який слід врахувати, це сховище. Хоча база даних SQLite за замовчуванням невелика, якщо ви хочете зберігати дуже довгу історію збоїв, я рекомендую виділити щонайменше 10 ГБ місця. Крім того, якщо ви плануєте отримувати доступ до панелі з-за меж вашої локальної мережі, вам знадобиться власний домен та зворотний проксі-сервер як Менеджер проксі-серверів Nginx для керування SSL-сертифікатами та забезпечення безпечного з’єднання.
Покрокова інсталяція за допомогою Docker Compose
Найчистіший та найпрофесійніший спосіб налаштувати Uptime Kuma – це використовувати YAML-файл. Спочатку створіть окрему папку для впорядкування, наприклад, у вашому домашньому каталозі, а потім створіть файл усередині неї. docker-compose.ymlЦей метод є кращим, оскільки він дозволяє нам керувати оновленнями та томами набагато легше, ніж за допомогою однієї команди.
Прикладом оптимізованої конфігурації буде наступне:
послуги: uptime-kuma: зображення: louislam/uptime-kuma:2 ім'я_контейнера: uptime-kuma перезапуск: unless-stopped порти: - "3001:3001" томи: - ./data:/app/data середовище: - TZ=Європа/Мадрид перевірка справності: тест: інтервал: 60 с тайм-аут: 30 с повторні спроби: 5
Після збереження файлу просто запустіть docker compose up -d щоб контейнер запускався у фоновому режимі. Тепер залишилося лише відкрити браузер і ввести IP-адресу вашого сервера, а потім порт 3001. Перше, що ви побачите, це майстер для створити користувача з правами адміністратораЗверніть увагу: оберіть надійний пароль, оскільки Uptime Kuma не має простої системи відновлення пароля, і якщо ви його втратите, вам доведеться вручну редагувати базу даних.
Швидка альтернатива: встановлення за допомогою Docker Run
Якщо ви не хочете мати справу з YAML-файлами та вам потрібно негайно запустити монітор, є варіант "однорядкового виконання". Виконання однієї команди в терміналі розгорне службу. Ця команда створює контейнер, призначає порт 3001 та встановлює постійний том під назвою uptime-kuma щоб ви не втратили свої налаштування під час перезапуску контейнера.
Команда буде такою: docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1Хоча це й швидше, пам’ятайте, що для робочих середовищ набагато зручніше використовувати Compose. централізувати управління вашими послугами.
Встановлення Uptime Kuma за допомогою Docker: Початкове налаштування та оптимізація
Опинившись у панелі, не створюйте монітори та не закінчуйте на цьому. Є три критично важливі параметри, які вам потрібно налаштувати. По-перше, часовий пояс у меню «Загальні»; якщо ви його не зміните, журнали збоїв відображатимуться в UTC, і ви будете збожеволіти, намагаючись обчислити реальний час. По-друге, увімкніть… двофакторна автентифікація (2FA) У розділі безпеки, оскільки панель зберігає конфіденційні токени з ваших сповіщень. По-третє, якщо ви використовуєте зворотний проксі-сервер, увімкніть опцію довірчі заголовки проксі-сервера щоб система записувала справжню IP-адресу відвідувача, а не проксі-сервера.
Щоб запобігти споживанню системою ресурсів вашого сервера, налаштуйте інтервали перевірки. Вам не потрібно контролювати службу кожні 10 секунд, якщо вона не критична; 60-секундного інтервалу більш ніж достатньо для більшості випадків. значно знижує навантаження на процесор та розмір бази даних.
Типи моніторів та сповіщень
Встановлення Uptime Kuma з Docker пропонує численні переваги. Ви можете контролювати все: від простих вебсайтів за допомогою HTTP/HTTPS до Певні TCP-порти, DNS-запити або навіть стан інших контейнерів Docker. Дуже корисною функцією є перевірка ключових слів: це запобігає тому, щоб монітор повідомляв вам, що все гаразд, лише тому, що веб-сайт повертає код 200, коли насправді він відображає власну сторінку помилки.
Щоб система була корисною, вам потрібно, щоб вона вас сповіщала. Telegram, мабуть, найзручніший варіант. Вам просто потрібно створити бота з @BotFather, отримати токен та ідентифікатор чату, а потім налаштувати його на панелі сповіщень. Discord також чудово працює з вебхуками, хоча потрібно бути обережним з... обмеження швидкості повідомлень Якщо у вас одночасно виходять з ладу сотні моніторів, особливо якщо Час роботи Kuma не надсилає сповіщення правильно за насиченістю.
Якщо ви керуєте послугами для інших людей, ви можете створювати публічні сторінки стану. Вони дозволяють відображати доступність ваших послуг через зовнішню URL-адресу без доступу до вашої адміністративної панелі будь-кого. В ідеалі, у вас має бути така сторінка. публічна сторінка для клієнтів і ще один приватний для вашого внутрішнього контролю з більш чутливими моніторами.
Поширені помилки та технічне обслуговування
Найсерйозніша помилка, яку роблять користувачі, — це забування резервних копій. Усі налаштування зберігаються в папці /app/dataЯкщо диск вийде з ладу або ви випадково видалите том, ви втратите всю історію та монітори. Запрограмуйте простий скрипт, який виконує щоденне резервне копіювання цього каталогу до іншого місця або хмари.
Ще однією помилкою є неввімкнення режиму обслуговування перед перезапуском сервера. Якщо ви цього не зробите, журнал подій буде заповнений помилковими збоями та Ви отримуватимете шквал сповіщень Непотрібні сповіщення на вашому телефоні. Активація технічного обслуговування призупиняє сповіщення та зберігає вашу історію чистою, поки ви виконуєте адміністративні завдання.
Встановлення Uptime Kuma з Docker трансформує управління будь-якою домашньою лабораторією або невеликою інфраструктурою, дозволяючи перейти від реактивного до проактивного підходу. Поєднуючи легкий дизайн контейнерів з потужністю сповіщень у режимі реального часу та гнучкістю моніторингу кількох протоколів, ви отримуєте повний контроль над доступністю сервісів без надмірної технічної складності чи витрат.
Редактор, що спеціалізується на технологіях та питаннях Інтернету з більш ніж десятирічним досвідом роботи з різними цифровими медіа. Я працював редактором і творцем контенту для компаній електронної комерції, комунікацій, онлайн-маркетингу та реклами. Я також писав на веб-сайтах з економіки, фінансів та інших секторів. Моя робота також є моєю пристрастю. Тепер через мої статті в Tecnobits, я намагаюся вивчати всі новини та нові можливості, які щодня пропонує нам світ технологій для покращення нашого життя.