1. docker-compose.yml
version: "3"
services:
  calibre-web:
    image: ghcr.io/linuxserver/calibre-web
    container_name: calibre-web
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/London
      - DOCKER_MODS=linuxserver/calibre-web:calibre #optional
      - OAUTHLIB_RELAX_TOKEN_SCOPE=1 #optional
    volumes:
      - ./data:/config
      - ./calibre/library:/books
    ports:
      - 80:8083
    restart: unless-stopped
    networks:
     - calibre
networks:
  calibre:
  1. ПОСЛЕ СТАРТА НАДО ЗАПУСТИТЬ ЭТОТ скрипт в контейнере
sudo docker exec -it calibre-web bash
vim calibre.sh


#!/bin/bash

FILE=/books/metadata.db
PUID=1000
PGID=1000

if test -f "$FILE"; then
    echo "$FILE already exists, skipping generation."
else
    echo "$FILE does not exists, generating..."
    cd /app/calibre/bin
    calibredb restore_database --really-do-it --with-library /books
    echo "$FILE created, setting permissions..."
    chmod a+w $FILE
    # this is needed for uploads, you can remove it if you don't want to allow uploads
    chown $PUID:$PGID /books
    echo "Permissions fixed, use /books as library path"
fi

Запускаем скрипт и выходим exit

bash calibre.sh
  1. Далее в настройках поменять тему на темную

  2. Поменять пароль для пользователя

  3. Разрешить загрузку книг

  4. Использовать теги

  5. Добавить разрешение публиковать полки