mysurik.ru

Homepage — статичный дашборд для сервера который я пожалел что не поставил раньше

Homepage — статичный дашборд для сервера который я пожалел что не поставил раньше

Увидел я как-то в реддите скриншот дашборда одного парня. У него там всё — серверы, погода, загрузка CPU, даже сколько кофе в офисе осталось. Я сижу смотрю на свои 14 вкладок в браузере — Proxmox, Portainer, AdGuard, Grafana, ещё три штуки — и чувствую себя пещерным человеком.

Решил: хрен его знает сколько это займёт, но хочу так же. Нашёл Homepage — open-source, статичный, без базы данных. То есть поднял и забыл. Идеально для параноика вроде меня.

Docker Compose файл — буквально 12 строк. image, ports, volumes, пара environment переменных. Пробросил /var/run/docker.sock — так Homepage сам видит все мои контейнеры и подхватывает иконки. Первый запуск: пустая страница. Ну хоть не упало, уже хорошо.

Дальше — документация. Честно скажу, Homepage не из тех проектов где можно на глазок. Их yaml-формат специфичный. Пришлось посидеть, покурить маны. Но когда разобрался — понеслась.

Создал services.yaml. Разбил всё на группы: Виртуализация — Proxmox, Мониторинг — Grafana + Uptime Kuma, Сеть — AdGuard + Nginx, Утилиты — Portainer + Heimdall. Для каждого сервиса прописал URL и иконку. Всё это без базы данных — просто текстовые yaml файлы.

Дальше — виджеты. Погода через OpenWeatherMap API. Системные метрики — CPU, память, диск. И главное — поисковая строка. Поставил себе поиск по умолчанию DuckDuckGo, больше не открываю новую вкладку ради поиска.

Долго возился с Docker discovery. Homepage умеет сканировать Docker сокет и сам подцеплять контейнеры с иконками. Но если контейнер не имеет label’ов — будет тупо показывать имя. Пришлось добавить labels в docker-compose каждого сервиса. Туповато, но работает.

Из неприятного — не взлетела интеграция с Proxmox через API. В документации написано что поддерживается, но у меня на девятой версии Proxmox что-то пошло не так. Не выводил статистику по VM. Забил, повесил просто ссылку.

Сейчас Homepage висит на порту 3000, закрыт базовой аутентификацией через Nginx. Сделал себе правило — утром открываю дашборд а не 14 вкладок. Сэкономил, наверное, минут 10-15 в день. По мелочи, но приятно.

Единственный минус — Homepage написан на Node.js и жрёт около 200MB RAM. Для дашборда это перебор, согласен. Но у меня на сервере 8 гигов, могу себе позволить такую роскошь.

В итоге это одна из тех вещей которую я пожалел что не сделал раньше. Как переезд с голого редактора на IDE. Ничего критичного не меняет, но жить становится чуточку удобнее.

Если у тебя больше трёх сервисов на сервере — попробуй. Неделя привыкания, и ты уже не представляешь как жил без этого. По крайней мере у меня так.

Ваш комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *