Sélectionner Une Page

Grimmory – Installation

DOCKER, MEDIAS

Grimmory est une application de bibliothèque numérique auto-hébergée, présentée comme le successeur communautaire de BookLore. Elle permet de gérer, lire et annoter une collection complète de livres et de bandes dessinées (EPUB, PDF, MOBI, AZW, CBZ, etc.) sans dépendre de services cloud tiers.

Les fonctionnalités clés incluent :

  • Gestion avancée : Étagères intelligentes basées sur des règles, recherche en texte intégral et enrichissement automatique des métadonnées (couvertures, descriptions) via Google Books, Open Library et Amazon.
  • Lecture intégrée : Lecteur web pour annoter et suivre la progression de lecture. 
  • Synchronisation : Compatibilité avec les liseuses Kobo, les applications OPDS et la synchronisation de la progression avec KOReader. 
  • Automatisation : Fonctionnalité "BookDrop" pour l'import automatique des fichiers déposés dans un dossier surveillé. 
  • Partage et Multi-utilisateurs : Support de plusieurs profils avec authentification locale ou OIDC, et envoi direct de livres vers une Kindle ou par e-mail. 

1. Configuration Console

1.1. Application personnalisée

Cliquez sur l’icône + en haut à droite de la page d’accueil au dessus des tuiles et sélectionnez Installer une application personnalisée.

1.2. Importer

La fenêtre des paramètres de votre application s’ouvre et cliquez sur l’icône flèche vers le carré en haut à droite, avec pour libellé Importer

1.3. Importer le YAML

Le pop-up vous propose d’importer votre configuration avec un fichier YAML ou de copier-coller celle-ci dans la fenêtre dédiée. Vous pouvez agrandir cette fenêtre en sélectionnant les deux traits en bas à droite.

Copier-coller dans la fenêtre le code de configuration ci dessous (ouvrir la bascule)

YAML

Grimmory

name: grimmory
services:
  grimmory:
    cpu_shares: 
    command: []
    container_name: grimmory
    depends_on:
      mariadb:
        condition: service_healthy
        required: true
    deploy:
      resources:
        limits:
          memory: 
        reservations:
          devices: []
    environment:
      - BOOKLORE_PORT=6060
      - DATABASE_PASSWORD=zima-pass
      - DATABASE_URL=jdbc:mariadb://mariadb:3306/grimmory
      - DATABASE_USERNAME=zima-grimm
      - GROUP_ID=
      - TZ=Europe/Paris
      - USER_ID=
    healthcheck:
      test:
        - CMD-SHELL
        - wget -q -O - http://localhost:6060/api/v1/healthcheck
      timeout: 10s
      interval: 1m0s
      retries: 5
      start_period: 1m0s
    image: grimmory/grimmory:latest
    labels:
      icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/grimmory.png
    ports:
      - target: 6060
        published: "6060"
        protocol: tcp
    restart: unless-stopped
    volumes:
      - type: bind
        source: /DATA/AppData/grimmory/data
        target: /app/data
      - type: bind
        source: /media/MEDIAS/Livres
        target: /books
      - type: bind
        source: /DATA/AppData/grimmory/bookdrop
        target: /bookdrop
    devices: []
    cap_add: []
    networks:
      - grimmory
    privileged: false
  mariadb:
    cpu_shares: 
    command: []
    container_name: grimmory-db
    deploy:
      resources:
        limits:
          memory: 
        reservations:
          devices: []
    environment:
      - MYSQL_DATABASE=grimmory
      - MYSQL_PASSWORD=zima-pass
      - MYSQL_ROOT_PASSWORD=zima-pass
      - MYSQL_USER=zima-grimm
      - PGID=
      - PUID=
      - TZ=Europe/Paris
    healthcheck:
      test:
        - CMD
        - mariadb-admin
        - ping
        - -h
        - localhost
      timeout: 5s
      interval: 5s
      retries: 10
    image: lscr.io/linuxserver/mariadb:latest
    labels:
      icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/grimmory.png
    restart: unless-stopped
    volumes:
      - type: bind
        source: /DATA/AppData/grimmory/db
        target: /var/lib/mysql
    ports: []
    devices: []
    cap_add: []
    networks:
      - grimmory
    privileged: false
networks:
  grimmory:
    name: grimmory
    driver: bridge
x-casaos:
  author: self
  category: self
  hostname: 
  icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/grimmory.png
  index: /
  is_uncontrolled: false
  port_map: "6060"
  scheme: http
  store_app_id: grimmory
  title:
    custom: GRIMMORY
    en_us: grimmory

Cliquez sur Appliquer, puis sur OK sur le Pop-up qui s’affiche

1.4. Paramètres Grimmory

ONGLET GRIMMORY

Web UI : votre IP locale

Volumes :

/Chemin/des/eBooks = /books

Variables d'environnement :

USER_ID et GROUP_ID = Indiquez vos UID et GID

DATABASE_PASSWORD et DATABASE_USERNAME peuvent être changés (à reporter sur l'onglet mariadb)

ONGLET MARIADB

Variables d'environnement :

USER_ID et GROUP_ID = Indiquez vos UID et GID

DATABASE_PASSWORD et DATABASE_USERNAME peuvent être changés (correspondance avec ceux de l'onglet grimmory)

1.5. Installer

Cliquez sur Installer et patientez le temps de l’installation.

NB Si vous avez installé le Pare-feu ouvrez le port 6060 à l'onglet Rules

Puis, cliquez sur la nouvelle tuile créée pour ouvrir une nouvelle page web

2. Configuration Web

Bienvenue sur Grimmory

Vous trouverez en suivant le lien ci-dessous, la configuration complète et illustrée de Grimmory.

morgyann

morgyann

Curieux de nature, j’ai découvert le monde des serveurs et plus particulièrement les applications Docker en apprenant au fil des essais et des ressources partagées sur le web. En retour, je partage ce que je connais et plus particulièrement à l'intention des débutants.

Vous pouvez me retrouver sur Forum des NAS sur lequel je participe régulièrement.

Soutenons l'utilisation des applications open source et leurs développeurs.