Sélectionner Une Page

Grimmory – Installation

DOCKER, MEDIAS | 0 commentaire

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=grimzima
      - DATABASE_URL=jdbc:mariadb://mariadb:3306/grimmory
      - DATABASE_USERNAME=grimuser
      - GROUP_ID=1000
      - TZ=Europe/Paris
      - USER_ID=999
    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=grimzima
      - MYSQL_ROOT_PASSWORD=rootzima
      - MYSQL_USER=grimuser
      - PGID=1000
      - PUID=999
      - TZ=Europe/Paris
    healthcheck:
      test:
        - CMD
        - mariadb-admin
        - ping
        - -h
        - localhost
      timeout: 5s
      interval: 5s
      retries: 10
    image: lscr.io/linuxserver/mariadb:11.4.5
    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

WebUI : Indiquez l'IP locale

Volumes :

Face à /books faites correspondre le chemin du dossier de stockage des ebooks

Variables d'environnement

GROUP_ID et USER_ID faites correspondre vos identifiants

DATABASE_USERNAME et DATABASE_PASSWORD = vous pouvez changer par sécurité par vos propres noms et mot de passe (à reporter sur l'onglet mariadb) 

Onglet mariadb

Changer par sécurité par vos propres noms et mot de passe (si fait sur l'onglet grimmory)

1.5. Installer

Cliquez sur Installer et patientez le temps de l’installation

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

2. Configuration Web

2.1. Créer son compte

Configurez votre compte administrateur sur la console et Créer

Puis, connectez-vous

Bienvenue sur Grimmory

Vous trouverez la suite de la configuration en image sur le site de Grimmory en suivant le lien ci-après

morgyann

morgyann

Curieux de nature, j’ai découvert le monde des serveurs et plus particulièrement des 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.

Si vous avez envie de proposer un article, n'hésitez pas à me contacter.

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