Новые релизы
Сравнение версии рецепта с последним известным релизом upstream. Это номер версии, а не разбор изменений.
Beszel собирает показатели CPU, памяти, дисков и сети через лёгкие агенты и хранит историю в локальной панели. Рецепт центрального сервера создаёт закрытого администратора при первом запуске, отключает самостоятельную регистрацию и сохраняет аккаунты, метрики и SSH-ключ в одном резервируемом томе.
Beszel хранит компактную историю ресурсов серверов: CPU, RAM, swap, заполнение дисков и трафик. Агенты передают измерения; центральная панель сохраняет аккаунты, права, настройки оповещений и историю в локальных SQLite-базах. Подойдёт домашним серверам и небольшой инфраструктуре.
Рецепт устанавливает центральный сервер, а не агенты на всех машинах. Добавляйте системы через интерфейс и устанавливайте соответствующий фиксированный образ агента на каждую из них. Интеграции Docker, GPU, SMART, ZFS и systemd требуют отдельных прав и настройки. Smoke запускает настоящий изолированный агент без host networking и Docker socket; показания относятся к тестовому окружению.
При новой базе сервер создаёт администратора приложения и суперпользователя PocketBase из заданных email/пароля. Самостоятельная регистрация закрыта. OIDC, MFA по email-OTP и вход по доверенному заголовку поддерживаются upstream, но рецептом не настроены. Для email-OTP нужен SMTP.
Веб-интерфейс встроен. Клиенты Android/iOS и macOS, перечисленные в официальной документации, — независимые сторонние проекты; здесь они не проверены. Перед подключением изучите лицензии и обращение с учётными данными.
Для пользователей Netdata Cloud Beszel покрывает локальную панель ресурсов и историю. Возможности наблюдения и интеграции отличаются; экономия без проверенных актуальных цен не заявляется.
Оценка безопасности (2026-10-24): loopback HTTP, процесс без root, корневая ФС только для чтения, закрытая регистрация и отсутствие доступа к хосту/Docker. Отдельно защищайте SSH-ключ панели, интерфейс PocketBase и каждый агент. Это разбор конфигурации, а не скан уязвимостей.
Источники: установка панели, агенты, переменные, безопасность, OIDC, мобильные клиенты, десктоп.
Это сохранённые результаты отдельных проверок, а не данные в реальном времени. Неизвестный статус означает, что проверка ещё не выполнялась.
Сравнение версии рецепта с последним известным релизом upstream. Это номер версии, а не разбор изменений.
Результат отдельного сканирования Docker-образов, а не проверки Compose.
Новый major находится сравнением номеров версий. Вердикт о совместимости заносится вручную после чтения release notes и порядка миграции.
Изменения upstream Compose относительно проверенного рецепта.
Проверка закреплённых тегов образов на наличие новых версий.
От наблюдения к действию
Рецепт уже закрепляет последний известный релиз. Ниже показаны сохранённые основания для этой версии.
0.21.10.21.1Открыть релиз на GitHub ↗ Ссылка нужна для ревизии и сама по себе не доказывает совместимость.
Номера версий не пересекают major-границу совместимости. Вердикт о совместимости не записан.
Смена тегов образов сейчас не планируется.
Смена тега и перезапуск. Шаги конкретного релиза всё равно берутся из release notes и инструкции по установке.
Смена версии сейчас не планируется. Рецепт содержит процедуру backup. Restore проверен.
Точная проверка уровня «Проверен полностью» для этой версии записана 2026-10-24.
Статус показывает, насколько опубликованный рецепт покрывает требования каждого уровня.
Минимальная конфигурация для локальной сети или доступа через VPN.
Рецепт закрывает все требования этого уровня.
Публичная установка с защищённым доступом и резервными копиями.
Рецепт закрывает все требования этого уровня.
Конфигурация для предсказуемой эксплуатации и наблюдаемости.
Нужно добавить вручную: отдельная бд, внешний мониторинг, лимиты cpu и памяти.
Собрать под свой сервер
Ответьте на пять вопросов и скачайте готовый комплект Beszel.
Сначала прочитайте полную инструкцию: в ней описаны доступ извне, backup и расположение данных.
cp .env.example .envdocker compose up -ddocker compose psНужны Ubuntu 24.04 LTS или Debian 12/13, Docker Engine и Compose >=2.24.0 из официального репозитория. Скачайте рецепт целиком.
cp .env.example .env
chmod 600 .env
openssl rand -hex 24
Замените CHANGE_ME в BESZEL_ADMIN_PASSWORD случайным значением, укажите свой BESZEL_ADMIN_EMAIL и реальный BESZEL_URL.
docker compose config --quiet
docker compose pull
docker compose up -d --wait
docker compose ps
Откройте http://localhost:8090 и войдите с заданными email/паролем. На новой базе они создают администратора Beszel и суперпользователя PocketBase; при существующей базе окружение не меняет пароли. Не открывайте панель до настройки закрытых credentials.
Нужны домен, HTTPS, firewall и зашифрованные внешние копии. Оставьте 8090 на loopback и публикуйте только прокси. Доступ к /_/ ограничьте доверенными операторами.
Предпочтительны SSH-туннель (ssh -L 8090:127.0.0.1:8090 user@server) или VPN/прокси. Для прямой доверенной LAN явно поменяйте bind в Compose и ограничьте firewall. BESZEL_URL должен совпадать с адресом браузера.
Направьте DNS на прокси, задайте BESZEL_URL=https://metrics.example.com и пересоздайте сервис. Пропускайте WebSocket upgrade и долгие соединения: они нужны live-интерфейсу и WebSocket-агентам.
Используйте proxy/Caddyfile на хосте; Caddy обслуживает TLS и WebSocket.
Получите указанный сертификат, подключите proxy/nginx.conf в контексте http, проверьте nginx -t и перезагрузите. map выбирает правильный заголовок Connection.
Загрузите proxy/traefik.yaml через file provider с websecure и resolver letsencrypt. Пример рассчитан на Traefik хоста; контейнеру нужен маршрут к панели вместо loopback хоста.
Именованный BESZEL_DATA_VOLUME подключён к /beszel_data: data.db, auxiliary.db, закрытый id_ed25519, состояние уведомлений и встроенные backup. Сохраняйте весь каталог, включая WAL работающего сервиса. Данных агентов здесь нет. Смена имени тома выбирает другую установку.
Выполните bash backup.sh. Скрипт останавливает панель, сохраняет весь том, .env и Compose и возвращает прежнее состояние запуска. Права архива — 600. Шифруйте и выносите копии с сервера; конфигурацию, токен и данные каждого агента храните отдельно.
Восстановление заменяет текущие данные. Используйте доверенный архив. На новой машине сначала запустите рецепт, вручную сравните архивную configuration.env (она не активируется) и выполните bash restore.sh /safe/path/beszel-backup.tar. Скрипт проверяет обязательные файлы, делает страховочную копию, заменяет данные и ждёт health. При ошибке распаковки панель остаётся остановленной. Используются пароли и SSH-ключ восстановленной базы; проверьте историю и переподключение агентов.
Прочитайте release notes, сделайте backup, установите новый явный BESZEL_VERSION и выполните docker compose pull && docker compose up -d –wait. Не используйте latest. Отдельно обновляйте агентов до совместимой фиксированной версии и проверяйте метрики. Обновление панели — замена образа на месте; перед будущими major-релизами изучайте инструкции миграции.
Остановите beszel, верните прежний BESZEL_VERSION в .env, скачайте и один раз запустите его, затем восстановите соответствующий архив до обновления. База после миграций нового PocketBase/Beszel может не работать со старым бинарником: возвращайте старый снимок. Проверьте вход, назначенные системы и соединения агентов.
docker compose down сохраняет том. Для полного удаления сначала выгрузите backup, проверьте проект и BESZEL_DATA_VOLUME, затем выполните docker compose down –volumes. Аккаунты, SSH-ключ и история будут уничтожены. .env, DNS/прокси и отдельные агенты удаляйте, когда они больше не нужны.
| Variable | Назначение |
|---|---|
BESZEL_VERSION |
Тег панели 0.21.1 |
BESZEL_PORT |
HTTP-порт loopback хоста, исходно8090 |
BESZEL_URL |
Реальный внешний URL интерфейса и ссылок |
BESZEL_ADMIN_EMAIL |
Email начального администратора/суперпользователя, только новая БД |
BESZEL_ADMIN_PASSWORD |
Случайный начальный пароль; замените CHANGE_ME |
BESZEL_DATA_VOLUME |
Уникальное имя постоянного тома |
TZ |
Часовой пояс IANA, исходно Etc/UTC |
BESZEL_BACKUP_DIR |
Необязательная закрытая папка архивов |
Через Add System создайте запись и используйте инструкции агента для нужной машины. Замените плавающий тег в предложенной UI-команде на henrygd/beszel-agent:0.21.1. Для SSH разрешайте порт агента только панели; для WebSocket используйте TLS. Не копируйте Docker socket, host network или устройства без необходимости: они расширяют доступ. Публичный ключ панели — не закрытый ключ. SMTP, OIDC, MFA и доставка оповещений в рецепте не настроены.
Сообщить о проблеме с рецептом
Рассказать, как прошло на вашем сервере
Откроется предзаполненный issue на GitHub. Нужен аккаунт GitHub; после отправки сообщение будет публичным.
docker compose ps
docker compose logs --tail=100 beszel
docker compose exec beszel /beszel health --url http://127.0.0.1:8090
Неверный пароль: переменные администратора применяются только к новой базе. Восстановление возвращает старый пароль. Используйте собственную процедуру смены пароля PocketBase; не удаляйте том ради сброса.
Нет систем/метрик: рецепт устанавливает только панель. Установите отдельный агент, назначьте систему пользователю, проверьте адрес, порт, ключ и версию. localhost внутри панели указывает на контейнер панели. Разрешайте SSH только от неё; WebSocket требует корректного HUB_URL, токена, TLS и proxy upgrade.
Permission denied: инициализатор выставляет UID/GID1000 для тома. Не подключайте чужой том. Root контейнера read-only; запись допускается в data и временный tmpfs.
Оповещения не доходят: SMTP/push не настроены. Наличие сохранённого правила не доказывает доставку. Проверьте интеграцию по официальной документации.
Пустая история: новые системы начинают накопление после подключения, агрегаты появляются позже. Пользователь видит только назначенные ему системы. Тестовые контейнеры не доказывают полноту метрик физического хоста.
Backup/restore: FOSSARY_ENV_FILE выбирает другую .env. Неполный архив отклоняется до остановки. При ошибке извлечения панель остаётся остановленной: проверьте место, права, архив и страховочную копию. Архивы содержат секреты и закрытый SSH-ключ; не публикуйте их.
Fossary — независимый информационный каталог, не связанный с разработчиками представленных приложений. Мы собираем сведения из открытых источников и проверяем опубликованные рецепты, но не разрабатываем, не распространяем и не контролируем эти приложения.
Публикация карточки или статус проверки не являются требованием, навязыванием либо персональной рекомендацией использовать приложение. Вы самостоятельно решаете, подходит ли оно вам, и используете его на свой риск. Мы не гарантируем безопасность, доступность или пригодность приложения и, в пределах, допускаемых законом, не отвечаем за вызванные им потери или ущерб. До установки проверьте лицензию, настройки безопасности, обработку данных и резервное копирование.