Aller au contenu

[Tuto] Calibre-web via Docker


quart-temps

Messages recommandés

@.Shad.

Bonjour,

Je viens de lancer la construction du conteneur calibre-wed via un "docker-compose up -d" sur le fichier "docker-compose.yml" suivant :

version: "2.1"
services:
    calibre-web:
        image: linuxserver/calibre-web
        container_name: calibre-web
        environment:
            - LANGUAGE=en_US.UTF-8
            - LANG=en_US.UTF-8
            - APPNAME=calibre
            - UMASK_SET=022
            - TZ=Europe/Paris
            - DOCKER_MODS=linuxserver/calibre-web:calibre
        labels:
            - "com.centurylinklabs.watchtower.enable=true"
        volumes:
            - "/volume1/docker/calibre-web/data:/config"
            - "/volume1/eBooks/Calibre_BD/:/books"
        user: "1030:101"
        ports:
          - 8083:8083
        restart: unless-stopped

PROBLEME : le conteneur ne se lance pas ! Il reste bloqué sur "Redémarrage en cours ..."

image.png.2c5ba4079baee5092fed8f296f400afe.png

Dans le log du conteneur j'ai ceci :

root@MonNAS:/volume1/docker/calibre-web# docker logs -f calibre-web
s6-mkdir: warning: unable to mkdir /var/run/s6: Permission denied
s6-mkdir: warning: unable to mkdir /var/run/s6: Permission denied
s6-mkdir: warning: unable to mkdir /var/run/s6: Permission denied

Sur le NAS, le répertoire "/var/run/s6" n'existe pas !

Est-ce que ce serait parce que l'utilisateur déclaré dans le fichier "docker-compose.yml" est seulement 'administrateur' et donc pas 'root', que ce répertoire ne peut être créé ?

Je vois pas ce que j'ai pu raté, une idée ?

EDIT1 : Finalement j'ai trouvé tout seul (comme un grand ! 😛) c'était mon fichier "docker-compose.yml" qui n'était pas bon. Voici celui qui marche :

version: "2.1"
services:
    calibre-web:
        image: linuxserver/calibre-web:latest
        container_name: calibre-web
        environment:
            - LANGUAGE=en_US.UTF-8
            - LANG=en_US.UTF-8
            - APPNAME=calibre
            - UMASK_SET=022
            - TZ=Europe/Paris
            - PUID=1030
            - PGID=101
            - DOCKER_MODS=linuxserver/calibre-web:calibre
        labels:
            - "com.centurylinklabs.watchtower.enable=true"
        volumes:
            - "/volume1/docker/calibre-web:/config"
            - "/volume1/eBooks/Calibre_BD:/books"
        ports:
          - 8083:8083
        restart: unless-stopped

 

EDIT 2 : Pour information @quart-temps, lorsque à la première connexion l'appli demande le chemin de la base de données calibre il faut saisir : "/books" et non pas "\books" comme dit dans le TUTO.

Cordialement

oracle7😉

 

Modifié par oracle7
Lien vers le commentaire
Partager sur d’autres sites

En réalité, il faut bien différencier ce que fait :

user: "x:y"

et ce que font les variables PUID, PGID.
Dans le premier cas, ça revient à chown dans le conteneur de ce qu'on met dans "volumes:"
Donc les fichiers et dossiers auront pour utilisateur x et groupe y. Ca peut parfois mener à des problèmes de fonctionnement.

PUID et PGID, variables généralisées sur les images Linuxserver, mais on trouve l'équivalent sur bien d'autres images, fait correspondre l'utilisateur dans le conteneur, souvent "abc" dans les images de LS, avec l'utilisateur dont on précise les uid/gid. C'est beaucoup plus subtil et n'impacte pas le fonctionnement du conteneur.

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Un petit retour.

Calibre-wed installé, fonctionne très bien, je suis juste un peu déçu qu'il n'en fasse pas plus.

A coté de cela, pas moyen d'affecter en masse une série de livres à une étagère. Il faut se les cogner un par un, pas top à l'usage ... Sinon impeccable pour lire les livres à distance avec une tablette.

Mais pas moyen d'ajouter de livres.

Heureusement, j'ai aussi installé calibre (image linuxserver/calibre) et là j'ai la totale, super ! 😉 Mais il prend 550Mo de mémoire quand calibre-web n'en prend qu'environ 90 à 100Mo.

Cordialement

oracle7@😉

Modifié par oracle7
Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Bonjour,

J'ai bien suivi (plusieurs fois) le tutoriel et je n'arrive pas à faire fonctionner Calibre.

Après l'avoir lancé (en indiquant bien les bons paramètres), je n'ai pas de page de login, tout de suite une page où indiquer l'emplacement de la DB.

Quelle que soit la valeur que j'indique, j'ai une erreur "L'emplacement DB est incorrect, veuillez saisir un chemin valide". J'ai essayé "books", "/books"," \books".

J'ai bien créé un compte technique spécifique pour Calibre et j'ai renseigné son PUID et PGID

J'ai bien indiqué le port 8083.

Je suis, j'avoue, assez perdu...

Merci d'avance pour toute aide que vous pourriez m'apporter 🙂

Message d'erreur

image.thumb.png.be0788936305dff2c4025559568073fd.png

ma configuration

image.png.4b880f18eaf525cafc5ad118ef312bc2.png

Modifié par faluorn
Lien vers le commentaire
Partager sur d’autres sites

"/volume1/docker/calibre/Bibliothèque calibre/"

@faluorn

Bonjour,

  1. Comme sur tout forum, il est d'usage que les nouveaux membres passent par la rubrique [PRESENTATION] pour faire la leur. Certains ici, y sont sensibles et de plus cela facilite les réponses en fonction du niveau de compétences du membre. Cela dit rassures-toi il n'est pas trop tard pour bien faire ...
     
  2. J'ai finalement corrigé mon fichier docker-compose.yml (voir EDIT1 dans ma réponse précédente). a priori le répertoire "/books" n'est pas utile, contrairement au TUTO. Je l'ai supprimé.
    Le conteur calibre est installé dans "/volume1/docker/calibre".
    Sur le NAS, j'ai un dossier partagé : "\\@IPduNAS\eBooks\Calibre_BD" qui contient la base de données calibre. C'est ce chemin qu'il faut donner pour la configuration principale (voir ta copie d'écran précédente).
    Par contre il faut aussi bien monter le volume "/var/run/docker.sock:/var/run/docker.sock" dans le conteneur calibre. Soit :
            volumes:
                - "/volume1/eBooks/Calibre_BD:/config"
                - "/var/run/docker.sock:/var/run/docker.sock"
    Nota : Les lignes suivantes (de mon fichier .yml) ne sont présentes que si tu utilises "watchtower" pour mettre à jour l'image du conteneur calibre.
            labels:
                - "com.centurylinklabs.watchtower.enable=true"

Voilà cela marche nickel chez moi avec cela. En espérant que ces indications t'aideront.

Cordialement

oracle7😉

 

Lien vers le commentaire
Partager sur d’autres sites

@oracle7

Il est très imprudent de faire ce que tu fais en montant le socket docker dans le le conteneur calibre. Quand tu fais ça, tu donnes littéralement à l'utilisateur root du conteneur la possibilité de contrôler tout ce que Docker fait sur ton système.
C'est nécessaire pour des programmes comme Portainer.
Telegraf peut éventuellement nécessiter de monter le socket Docker, mais en lecture seule.
En gros, une mauvaise manipulation de ta part ou une faille aurait le potentiel de supprimer tout ce que tu fais tourner sous Docker.
Pire encore, ça peut donner accès au compte root du NAS.
Un petit rm -rf / serait du plus bel effet. 🙂 

Calibre-web ne nécessite en aucun cas de monter le socket Docker.

Rien ne t'empêche de monter ta base de données dans /config, c'est juste moins propre.
Et si l'image dit de le faire là, il y a de bonnes raisons.

Exemple simple : tu veux réinitialiser ta configuration calibre-web pour recréer un conteneur.
Ca se fait facilement en supprimant le dossier sur l'hôte où tu as monté /config.
Dans ton cas, si je fais ça, ça supprime aussi toute ma bibliothèque calibre.

@faluorn

Peux-tu vérifier dans DSM que les dossiers /volume1/calibre/config et /volume1/calibre/books ont chacun pour propriétaire l'utilisateur dont tu as renseigné l'uid et le gid ? (clic droit sur le dossier config par exemple, tu peux choisir le propriétaire).
C'est contre-intuitif, et inutile en temps normal, mais assure-toi également qu'à la fois l'utilisateur ET le groupe donnent les droits de lecture/écriture sur les dossiers concernés.

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

@.Shad.

Bonjour,
Merci pour le rappel de sécurité., Je vais retirer cela. Sûrement un C/C malencontreux d'un autre fichier .yml  et les yeux pas en face des trous !🥴

Il y a 5 heures, .Shad. a dit :

Rien ne t'empêche de monter ta base de données dans /config, c'est juste moins propre.

Effectivement, c'est moins propre, cela ajoute tout un tas de fichiers autres.. Justement quelle alternative on a, car je n'ai pas réussi à faire autrement que de la monter dans le dossier de ma base de données ?

Cordialement

oracle7😉

Lien vers le commentaire
Partager sur d’autres sites

Bonjour à tous,

Merci pour vos réponses rapides!

En effet, en allant manuellement changer les droits sur les répertoires, j'ai pu démarrer ma bibliothèque Calibre, un grand merci!

Je n'ai, par contre, aucune vignette...? J'imagine que j'ai du rater quelque chose quelque part.

Un grand merci pour l'aide en tous cas.

@.Shad. je lis tes tutoriels sur Docker avec grand intérêt! ... Mais sans grand succès jusqu'à présent...

Lien vers le commentaire
Partager sur d’autres sites

Le 03/10/2020 à 19:57, .Shad. a dit :

Toutes ces variables sont des variables créées par le conteneur nécessaire pour son fonctionnement.
La liste des variables qui représentent un intérêt pour l'utilisateur https://hub.docker.com/r/linuxserver/calibre-web

Quand tu ne précises rien, le conteneur est créé en mode bridge, c'est lié aux réglages par défaut du démon dockerd (et c'est l'utilisation qu'on désire habituellement).

Exactement.

  • Accès externe à calibre web

J'ai réussi installer calibre web. C’est parfait et en plus il offre la possibilité de gérer sa bibliothèque depuis d'autre périphérique.

Par contre je n’ai pas compris comment réussir l’accès depuis un réseau externe à calibre web. Je suis obligé d’utiliser quickconnect à mon bureau (problème de filtrage des ports)… mais même sur un réseau autres l'adresse http://mondomaine:8083 ne fonctionne pas. Est_il possible de configurer cela ? Si oui comment ?

  • indicateur lu

Autre point, concernant la synchronisation de la colonne de donnée lue avec le champ personnalisé calibre que je n'arrive pas a faire. Si quelqu'un peut m'expliquer .

  • mise à jour

Enfin, je souhaiterais savoir avant de faire une connerie s'il est possible de faire la mise  jours vers calibre web 0.6.9 directement depuis l’interface calibre web ou alors s'il faut passer par une nouvelle installation dockers ?

Merci

 

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...
Le 23/11/2020 à 22:26, E.C a dit :
  • Accès externe à calibre web

J'ai réussi installer calibre web. C’est parfait et en plus il offre la possibilité de gérer sa bibliothèque depuis d'autre périphérique.

Par contre je n’ai pas compris comment réussir l’accès depuis un réseau externe à calibre web. Je suis obligé d’utiliser quickconnect à mon bureau (problème de filtrage des ports)… mais même sur un réseau autres l'adresse http://mondomaine:8083 ne fonctionne pas. Est_il possible de configurer cela ? Si oui comment ?

  • indicateur lu

Autre point, concernant la synchronisation de la colonne de donnée lue avec le champ personnalisé calibre que je n'arrive pas a faire. Si quelqu'un peut m'expliquer .

  • mise à jour

Enfin, je souhaiterais savoir avant de faire une connerie s'il est possible de faire la mise  jours vers calibre web 0.6.9 directement depuis l’interface calibre web ou alors s'il faut passer par une nouvelle installation dockers ?

Merci

 

quelqu’un pourrait-il m'aider sur la marche à suivre pour un accès à calibre web en externe ?

Lien vers le commentaire
Partager sur d’autres sites

Coucou les copains,
J'essaye depuis 45 minutes de faire fonctionner Calibre-Web mais ça ne veut vraiment pas ! Voilà ce que j'ai et ce que j'obtiens :

image.png.8c752d41e035b1479f2f1c8abee9708c.png

image.thumb.png.c22544486941de0c25f783316336544c.pngMa config :

PUID / PGID étant mon compte pour plex (donc c'est le bon)
 ayant des accès lecture/écriture sur Ebooks et docker

image.png.b8314a66439b37f673955cddb1e82bde.png
Quelqu'un a une idée?

MERCI

Lien vers le commentaire
Partager sur d’autres sites

  • 4 semaines après...

Bonjour à tous,

 

Je suis sur le tuto depuis hier soir et je n'y arrive pas ! DOnc à 1h du mat je me suis dis que je ré-essayerais demain, mais toujours aucun succès.

Je suis bloqué à l'étape suivante :

1780736062_Capturedecran2020-12-31a12_42_57.thumb.png.cbbbcd703974eb09f779e854831eb9a6.png

 

Je suis comme @GrOoT64 au niveau des GID et GUID (j'ai pris les accès Plex).

1230228383_Capturedecran2020-12-31a12_45_14.thumb.png.aa8fba12c432887f409b2778dbc41dca.png

1799356613_Capturedecran2020-12-31a12_46_10.thumb.png.ecdf697ec87e3ba3cd453e514754eacc.png

 

Je ne suis pas à mon premier Docker (Plex/Bitwarden/Nextcloud etc ...), mais j'avoue que je sèche un peu là ...

Je suivi tout le tuto à la lettre et rien.

Si quelqu'un peut me dire ou j'ai merdé, se serait top.

Par avance merci

Bonne journée

Lien vers le commentaire
Partager sur d’autres sites

@Tigurius87

Bonjour,

En SSH, que donne : "docker-compose logs -f calibre-web" ?

Utilises-tu un fichier docker-compose.yml pour créer ton conteneur calibre-web ?

Sinon le fichier docker-compose.yml sert à créer le conteneur Calibre-web.

  1. Sous SSH tu crées par exemple un répertoire : "/volume1/docker/calibre-web/data/"
    (tous mes conteneurs docker sont stockés dans un répertoire dédié sous "/volume1/docker/").
  2. Tu crées un autre répertoire : "/volume1/docker/scripts_instal/calibre-web/"
    (tous mes scripts docker-compose.yml sont stockés dans un répertoire dédié sous "/volume1/docker/scripts_instal").
  3. Tu te places dans ce répertoire : "cd /volume1/docker/scripts_instal/calibre-web/"
  4. Avant toutes choses, supprime bien le conteneur "calibre-web" existant : soit depuis l'interface DSM/Docker soit sous SSH avec un "docker-compose down" en étant dans le répertoire d'installation du script "/volume1/docker/scripts_instal/calibre-web/"
  5. Tu crées un fichier "docker-compose.yml" à l'instar du mien présenté plus loin (à adapter selon ton environnement).
  6. Vérifies bien que ton fichier docker-compose ne comporte pas de tabulations pour l'indentation : tous les décalages sont réalisés à partir d'espaces, c'est vital !!
  7. Vérifies aussi que rien ne bloque sur le sous-réseau 172.16.0.0 et qui doit être autorisé dans le pare-feu, c'est le réseau de communication utilisé par docker.
  8. Tu exécutes ensuite un "docker-compose -d up" cela crée le conteneur
  9. Pas obligatoire (à toi de voir) Via reverse proxy j'ai créé un "raccourci/redirection du style "https://ebooks.ndd.tld" vers "http://localhost:8083" pour me connecter dans un navigateur web.
  10. A la première connexion bien renseigner le chemin vers la base "/books".

Tu trouveras aussi toutes les explications sur la gestion des fichiers docker-compose dans le TUTO "Docker : introduction" de @.Shad. au § "Docker-compose via SSH".

Cette méthode est à mon humble avis de loin la plus simple pour créer un conteneur.

Donc voici  mon fichier docker-compose.yml qui fonctionne sans problème à la seule restriction que la base est montée dans le répertoire "config". J'ai pas trouvé comment la monter ailleurs.

La section "labels" est à supprimer si tu n'utilises pas "watchtower".

Citation

version: "2.1"
services:
    calibre-web:
        image: linuxserver/calibre-web:latest
        container_name: calibre-web
        environment:
            - LANGUAGE=en_US.UTF-8
            - LANG=en_US.UTF-8
            - APPNAME=calibre
            - UMASK_SET=022
            - TZ=Europe/Paris
            - PUID=1030
            - PGID=101
            - DOCKER_MODS=linuxserver/calibre-web:calibre
        labels:
            - "com.centurylinklabs.watchtower.enable=true"
        volumes:
            - "/volume1/docker/calibre-web:/config"
            - "/volume1/eBooks/Calibre_BD:/books"
        ports:
          - 8083:8083
        restart: unless-stopped

Le répertoire partagé du NAS qui contient ensuite les fichiers (livres/Bds) est chez moi : "eBooks\Calibre_BD".

Le PUIG/PGID est celui de mon utilisateur Toto qui est administrateur du NAS support.

Cordialement

oracle7😉

Lien vers le commentaire
Partager sur d’autres sites

Le 03/12/2020 à 17:34, E.C a dit :

quelqu’un pourrait-il m'aider sur la marche à suivre pour un accès à calibre web en externe ?

Je profite que le sujet reparte pour relancer ma demande. Quelqu'un pourrais m'expliquer comment configurer calibre web pour pourvoir utilisé l’accès depuis l'extérieur (c a  d avec l'adresse mondomaine:8089 ou via quickconnect au lieu de l'adresse IP Lan)

Idem pour la mise à jour ? peut on la faire directement depuis l'interface calibre web ?

merci

Lien vers le commentaire
Partager sur d’autres sites

@E.C

Bonjour,

A toutes fins utiles, regardes ma réponse précédente à @Tigurius87, cela pourrait peut-être t'aider.

Sinon, pour utiliser calibre-web depuis l'extérieur, le mieux est de configurer le proxy inversé du NAS (voir ce TUTO) et pour la mise à jour automatique de l'image docker de calibre-web je te conseillerai d'installer le conteneur watchtower (voir dans ce TUTO).

Sinon, même si tu es inscrit depuis 2008, un petit passage par la rubrique [PRESENTATION] pour faire la tienne serait appréciée, certains ici y sont sensibles. Cela dit il n'est jamais trop tard pour bien faire ...

Cordialement

oracle7😉

Modifié par oracle7
Lien vers le commentaire
Partager sur d’autres sites

@oracle7 je vais m'y mettre aujourd'hui. Mais de ce que j'ai compris je ne peux pas tout faire via l'interface docker synology. Je suis obligé de passer en SSH pour le fichier docker-compose ?

Étrange qu'on ne puisse pas passer par l'interface prévu, comme pour tous les autres conteneur.

Je te dis si j'y arrive 😉

Lien vers le commentaire
Partager sur d’autres sites

Pour cette image, on peut très bien le faire par l'interface Docker de DSM, mais si ça te motive à utiliser docker-compose, je ne te dissuaderai pas, c'est une bien meilleure habitude à adopter. 😉 

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

Yo tout le monde,

 

Je n'ai pas réussi en suivant vos consignes 😬

Mais j'ai réussi !
J'ai installé le logiciel Windows qui m'a créé un dossier pour mes livres et direct j'ai pu finaliser l'installation. Tout est fonctionnel à 100%

Encore merci pour votre aide. 🙂
Va falloir que je regarde ou je merde car ça me sera utile un jour !

Lien vers le commentaire
Partager sur d’autres sites

@Tigurius87

Bonjour,

Content pour toi que cela marche 👍, néanmoins je t'invite à revoir toute la procédure, tu as dû raté un truc car c'est étonnant que la création du dossier de la base de données via la version Calibre sur Windows, ai débloqué ton affaire.

Normalement, il n'y a pas besoin d'elle. En fait si, mais juste pour mettre à jour facilement la base de données avec de nouveaux Livres/BDs.

Cordialement

oracle7😉

 

Lien vers le commentaire
Partager sur d’autres sites

  • 4 semaines après...

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.