Как установить и настроить HomeBox на VPS
Если вещи в доме или гараже теряются, а на вопрос "куда я это положил и за сколько купил" ответа нет — самое время завести инвентарь. HomeBox — лёгкое self-hosted приложение именно для этого: локации, метки, фото, чеки и сроки гарантии в одном месте, без подписок и без чужих серверов. Разворачивается на VPS за 10-15 минут через Docker, весит меньше, чем средний Nextcloud-инстанс, и не требует отдельной базы данных для старта.
Содержание
Обсудить статью, задать вопрос или начать новую тему
Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.
Перейти в сообщество →Что такое HomeBox и кому он подходит
HomeBox — открытый (MIT-лицензия) инструмент для инвентаризации домашнего имущества, написанный на Go с фронтендом на Vue/Nuxt. Идея простая: вы заводите локации (дом → гараж → полка), предметы (телевизор, дрель, велосипед) и метки (электроника, гарантия, продать), а к каждому предмету можно прикрепить фото, скан чека, серийный номер, цену покупки и дату окончания гарантии.
Кому это реально пригодится:
- домовладельцам и арендодателям — для описи имущества (полезно для страховки при пожаре или заливе);
- тем, кто сдаёт квартиру или дом посуточно — опись мебели и техники по локациям;
- мастерским и гаражам — учёт инструмента, кто что взял и куда положил;
- коллекционерам — техника, инструменты, книги с фото и датой покупки.
Проект живёт на GitHub под именем sysadminsmedia/homebox (форк изначального hay-kot/homebox, который перестал поддерживаться) и распространяется как один Docker-образ — это и есть его главный плюс для установки на VPS: не нужно поднимать отдельно фронтенд, бэкенд и веб-сервер.
Что понадобится для установки
- VPS с 1 vCPU и 1 ГБ RAM — для домашнего использования этого достаточно с запасом, HomeBox не требователен к ресурсам. Если планируете держать на том же сервере что-то ещё, берите 2 ГБ.
- Ubuntu 24.04 или Debian 12 — команды ниже для них, на других дистрибутивах отличаются только пакетные менеджеры.
- Установленный Docker и Docker Compose plugin. Если ещё не ставили — есть отдельная пошаговая установка Docker на Ubuntu 24.04.
- Домен (не обязателен, но удобен для HTTPS и доступа с телефона).
- 5-10 ГБ свободного места на диске — под фото и вложения запас лучше держать с головой, если планируете фотографировать каждую вещь.
Все команды ниже выполняются под пользователем с правами sudo или под root.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США, Франция и РФ. Оплата картой РФ и по СБП.
Арендовать серверГотовим сервер
Обновите систему и убедитесь, что Docker установлен и запущен:
sudo apt update && sudo apt upgrade -y
docker --version
docker compose version
Создайте отдельную директорию для проекта — так удобнее держать конфиг и данные вместе и потом переносить их на другой сервер:
mkdir -p /opt/homebox/data
cd /opt/homebox
Если сервер смотрит напрямую в интернет и на нём стоит ufw, откройте только нужные порты — 22 для SSH и 80/443, если будете ставить HTTPS-прокси. Порт самого HomeBox (7745) наружу открывать не нужно, если он будет за реверс-прокси:
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
Запускаем HomeBox через Docker Compose
Создайте файл docker-compose.yml:
nano /opt/homebox/docker-compose.yml
Минимальный рабочий конфиг:
services:
homebox:
image: ghcr.io/sysadminsmedia/homebox:latest
container_name: homebox
restart: unless-stopped
ports:
- "7745:7745"
volumes:
- ./data:/data
environment:
- HBOX_LOG_LEVEL=info
- HBOX_LOG_FORMAT=text
- HBOX_WEB_MAX_UPLOAD_SIZE=10
- TZ=Europe/Moscow
Пояснения по переменным окружения:
| Переменная | Что делает |
|---|---|
HBOX_LOG_LEVEL | уровень логов: debug, info, warn, error |
HBOX_WEB_MAX_UPLOAD_SIZE | максимальный размер загружаемого файла (МБ) — увеличьте, если фотографируете вещи в высоком разрешении |
TZ | часовой пояс — влияет на даты покупки и напоминания о гарантии |
HBOX_OPTIONS_ALLOW_REGISTRATION | по умолчанию true; после создания своего аккаунта стоит выставить false, чтобы никто чужой не мог зарегистрироваться на вашем инстансе |
Все данные — sqlite-база и загруженные файлы — хранятся в /data внутри контейнера, который через volume смонтирован в /opt/homebox/data на хосте. Это единственное, что нужно бэкапить.
Запускаем:
docker compose up -d
docker compose logs -f homebox
Дождитесь строки о старте сервера (обычно занимает несколько секунд), затем откройте http://IP_СЕРВЕРА:7745 в браузере — должна открыться форма создания первого аккаунта.
Настраиваем домен и HTTPS
Открывать инвентарь по голому IP и HTTP неудобно и небезопасно — логин с паролем будет идти в открытом виде. Проще всего поставить перед HomeBox лёгкий реверс-прокси с автоматическим SSL. Если у вас уже настроен домен, можно использовать Caddy с авто-SSL — он сам получит и обновит сертификат Let's Encrypt.
Пример Caddyfile:
inventory.vash-domen.ru {
reverse_proxy localhost:7745
}
После этого в docker-compose.yml порт HomeBox лучше пробросить только на loopback, чтобы контейнер не был доступен напрямую по IP:
ports:
- "127.0.0.1:7745:7745"
Перезапустите оба сервиса — Caddy и HomeBox — и проверьте, что сайт открывается по HTTPS. Если вместо отдельного Caddy у вас уже есть Traefik как общий прокси для нескольких контейнеров, логика та же самая — HomeBox добавляется ещё одним сервисом со своими labels, подробности в статье про Traefik как реверс-прокси для Docker.
Первые шаги: локации, метки, предметы
После открытия HomeBox по домену создайте первый аккаунт — он автоматически становится администратором. Дальше логика такая:
- Locations (локации) — создайте иерархию под свой дом: например "Дом" → "Гараж" → "Верстак", или "Квартира" → "Кладовка". Локации можно вкладывать друг в друга сколько угодно уровней.
- Labels (метки) — теги поперёк локаций: "Электроника", "На гарантии", "Продать", "Инструмент". Один предмет может иметь несколько меток.
- Items (предметы) — сама вещь: название, локация, метки, дата и цена покупки, серийный номер, ссылка на продавца, дата окончания гарантии, фото и вложения (можно приложить скан чека или гарантийного талона).
- QR-коды и Asset ID — у каждого предмета есть числовой ID, на него можно сгенерировать QR-стикер и наклеить на коробку или сам предмет — сканируете телефоном и сразу попадаете в карточку.
Для массового переноса данных HomeBox поддерживает импорт и экспорт в CSV — удобно, если у вас уже есть таблица в Google Sheets или Excel с описью имущества: не нужно вбивать всё вручную по одной вещи.
Отдельно стоит настроить напоминания о гарантии — в интерфейсе можно посмотреть список предметов с истекающей гарантией, это удобно проверять раз в месяц, а не когда техника уже сломалась.
Бэкап и перенос базы данных
HomeBox по умолчанию хранит всё в sqlite-файле — это значит, что бэкап сводится к копированию одной директории. Простой скрипт для регулярного архивирования:
#!/bin/bash
DATE=$(date +%Y-%m-%d)
tar -czf /opt/homebox/backups/homebox-$DATE.tar.gz -C /opt/homebox/data .
find /opt/homebox/backups -name "*.tar.gz" -mtime +30 -delete
Добавьте его в cron на ежедневный запуск и обязательно копируйте архивы за пределы сервера — на локальный компьютер, S3-совместимое хранилище или хотя бы на другой VPS. Если сервер погибнет вместе с единственной копией базы, восстанавливать будет нечего.
crontab -e
# добавить строку:
0 3 * * * /opt/homebox/backup.sh
Восстановление — обратная операция: остановить контейнер, распаковать архив в /opt/homebox/data, запустить контейнер заново:
docker compose stop homebox
tar -xzf homebox-2026-08-30.tar.gz -C /opt/homebox/data
docker compose start homebox
Если объём вложений (фото и сканы чеков) вырастет до нескольких гигабайт, имеет смысл разнести бэкап базы и бэкап файлов вложений — первое можно делать каждый день, второе реже, например раз в неделю, чтобы не гонять по сети лишний трафик.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США, Франция и РФ. Оплата картой РФ и по СБП.
Арендовать серверНужны сами нейросети для контента?
Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.
Частые вопросы
HomeBox поддерживает PostgreSQL вместо sqlite?
В части версий и конфигураций есть поддержка внешней базы через переменные окружения, но для домашнего инвентаря на несколько сотен-тысяч предметов sqlite справляется без проблем и сильно упрощает бэкап — это одна из причин, почему стоит начинать именно с неё.
Можно ли дать доступ нескольким членам семьи?
Да, после первого администратора можно создавать дополнительные пользователи через настройки, но учтите переменную HBOX_OPTIONS_ALLOW_REGISTRATION — если оставить публичную регистрацию включённой на инстансе, доступном из интернета, зарегистрироваться сможет кто угодно.
HomeBox работает с мобильного?
Веб-интерфейс адаптивный и открывается в браузере телефона без проблем, отдельного нативного приложения на момент написания статьи нет — но именно поэтому удобны QR-коды на вещах: отсканировали и сразу в браузере видите карточку.
Что будет, если сервер с HomeBox выключится на день?
Ничего критичного — это не сервис реального времени, при следующем запуске контейнер поднимется с тем же состоянием базы. Важно только не терять сами данные, отсюда и регулярный бэкап.
Нужен ли мощный сервер под HomeBox?
Нет, это одно из самых лёгких self-hosted приложений — 1 vCPU и 1 ГБ RAM хватает даже при активном использовании, узкое место обычно не CPU, а место на диске под фотографии вложений.
Обсудить статью, задать вопрос или начать новую тему
Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.
Перейти в сообщество →