BookLore: Самостоятельная цифровая библиотека для хомелаба — пошаговый гайд
Установите и настройте BookLore — бесплатное, самодеплоемое приложение для создания персональной цифровой библиотеки. Полный гайд по Docker, организации контента и мультипользовательскому доступу для вашего хомелаба.
Создание структуры директорий
Создайте папку для проекта и папку для данных. Это позволит хранить конфигурацию отдельно от файлов библиотеки.
mkdir -p ~/booklore_app/booklib
cd ~/booklore_appСоздание файла docker-compose.yml
Создайте файл docker-compose.yml в папке ~/booklore_app. В этом файле укажите образ контейнера, порты и пути к директориям. Обязательно замените /path/to/your/books на реальный путь к вашим книгам на сервере.
version: '3.8'
services:
booklore:
image: ghcr.io/booklore-app/booklore:latest
container_name: booklore
restart: unless-stopped
ports:
- "4567:4567"
volumes:
# Директория с базой данных и настройками
- ./booklib:/config
# Директория с литературными файлами
- /path/to/your/books:/books
environment:
- TZ=Europe/Moscow # Ваш часовой пояс
- PUID=1000 # UID пользователя (узнать командой `id -u`)
- PGID=1000 # GID группы (узнать командой `id -g`)Запуск контейнера
В терминале в папке с файлом docker-compose.yml выполните команду для запуска контейнера в фоновом режиме. Docker автоматически скачает необходимый образ.
docker compose up -dПроверка логов и доступ
Проверьте, что контейнер запустился без ошибок. После успешного запуска откройте браузер и перейдите по адресу сервера, указав порт 4567 (например, http://192.168.1.10:4567).
docker compose logs -f bookloreПервоначальная настройка
При первом входе создайте учетную запись администратора. Заполните форму регистрации, затем войдите в систему. В веб-интерфейсе убедитесь, что путь к библиотеке (/books) корректно отображается и файлы доступны.
Настройка сканирования библиотеки
Перейдите в панель администратора (Admin Panel) -> Library Settings. Включите опцию 'Auto-scan' для автоматического обнаружения новых файлов в смонтированной папке. Установите интервал сканирования (например, раз в 15 минут).