Installer Paperless-ngx sur un serveur Unraid

Cet article est la traduction de ce site internet. Que son auteur soit remercié!

Voici un guide étape par étape sur la manière de configurer Paperless-ngx sur UnRAID. Je ne vais pas entrer dans les détails de son utilisation et de la configuration de l’interface utilisateur, mais je vais passer en revue toutes les étapes nécessaires pour le mettre en place et le faire fonctionner. Peut-être écrirai-je un article sur la configuration et l’utilisation dans un prochain billet.

Qu’est-ce que Paperless-ngx ?

Paperless-ngx est un fork de Paperless-ng, lui-même un fork de Paperless. C’est un système de gestion de documents gratuit et open-source avec une fonctionnalité de reconnaissance optique de caractères (OCR) intégrée. C’est la solution parfaite pour stocker et organiser tous vos reçus, contrats, documents, etc.

Avant de commencer, assurez-vous d’avoir le plugin Community Applications installé.

Configuration du partage de documents

Bien que vous n’ayez pas besoin d’un partage séparé spécifique aux documents Paperless-ngx, c’est ainsi que je recommande de le faire.

Sur UnRAID :

  1. Accédez à PARTAGES et AJOUTEZ UN PARTAGE.
  2. Donnez-lui un nom (par exemple : share_paperless-ngx_data) et cliquez sur AJOUTER UN PARTAGE.
  3. Configurez les paramètres de sécurité SMB (facultatif) et cliquez sur TERMINÉ. Vous avez maintenant un nouveau partage nommé « share_paperless-ngx_data ».

Redis

Redis est une base de données en mémoire requise par Paperless-ngx, donc elle doit être installée.

  1. Allez dans APPLICATIONS et installez « Redis » de jj9987.
  2. Il n’est pas nécessaire d’ajouter de configuration supplémentaire. Cliquez sur APPLIQUER.
  3. docker run
      -d
      --name='Redis'
      --net='bridge'
      -e TZ="Europe/Berlin"
      -e HOST_OS="Unraid"
      -e HOST_HOSTNAME="UnRAID"
      -e HOST_CONTAINERNAME="Redis"
      -l net.unraid.docker.managed=dockerman
      -l net.unraid.docker.icon='https://raw.githubusercontent.com/juusujanar/unraid-templates/master/img/Redis-logo.png'
      -p '6379:6379/tcp' 'redis'
    c275e5221bb13d99d392ee83f207b9a1fb18f30c12a44e086db20bb80ff55a36
    

Paperless-ngx

  1. Allez dans APPLICATIONS et installez « paperless-ngx » de Selfhosters.
  2. Modifiez les paramètres suivants pour le mappage des chemins :
    • Media : /mnt/user/share_paperless-ngx_data/media (Chemin du conteneur : /usr/src/paperless/media) C’est là que tous les documents sont stockés.
    • Consumption : /mnt/user/share_paperless-ngx_data/consume (Chemin du conteneur : /usr/src/paperless/consume) Les documents placés dans ce dossier sont importés automatiquement dans Paperless-NGX.
    • Export : /mnt/user/share_paperless-ngx_data/export (Chemin du conteneur : /usr/src/paperless/export) Ce dossier peut être utilisé par Paperless-ngx pour effectuer une sauvegarde complète. Voir https://docs.paperless-ngx.com/administration/#backup pour plus de détails.
  3. Configurez la base de données Redis, remplacez 10.0.24.10 par l’IP du serveur.
    • PAPERLESS_REDIS : redis://10.0.24.10:6380
  4. La langue OCR doit être définie sur la langue(s) la plus utilisée dans vos documents. Paperless-ngx utilise le moteur OCR Tesseract, donc les codes de langue corrects peuvent être trouvés ici : https://tesseract-ocr.github.io/tessdoc/Data-Files-in-different-versions.html.
    • PAPERLESS_OCR_LANGUAGE : eng+nor
    • PAPERLESS_OCR_LANGUAGES : eng nor
  5. Définissez votre fuseau horaire. Pour obtenir le format correct, consultez l’identifiant TZ dans ce tableau : https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
    • APERLESS_TIME_ZONE : Europe/Oslo
  6. Changez la clé secrète PAPERLESS_SECRET_KEY en quelque chose de long et aléatoire. Pas besoin de la mémoriser.
    • PAPERLESS_SECRET_KEY : (quelque chose de long et aléatoire)
  7. Cliquez sur l’icône Paperless-ngx dans l’onglet DOCKER et sélectionnez Console.
  8. Dans la console, tapez python manage.py createsuperuser pour créer votre premier utilisateur.
    • Remplissez un nom d’utilisateur et un mot de passe (L’email peut être laissé vide).
docker run
  -d
  --name='paperless-ngx'
  --net='bridge'
  -e TZ="Europe/Berlin"
  -e HOST_OS="Unraid"
  -e HOST_HOSTNAME="UnRAID"
  -e HOST_CONTAINERNAME="paperless-ngx"
  -e 'PAPERLESS_REDIS'='redis://[10.0.24.10]:6379'
  -e 'PAPERLESS_OCR_LANGUAGE'='eng+nor'
  -e 'PAPERLESS_OCR_LANGUAGES'='eng nor'
  -e 'PAPERLESS_FILENAME_FORMAT'='{created}-{correspondent}-{title}'
  -e 'PAPERLESS_TIME_ZONE'='Europe/Oslo'
  -e 'PAPERLESS_IGNORE_DATES'=''
  -e 'PAPERLESS_CONSUMER_POLLING'='0'
  -e 'PAPERLESS_SECRET_KEY'='98gyvwe84y84g5cm8wo4ymgx,oxg,my58ogh7,5h3589ohc578000flemmingss.com000ho37yo785yoh8735mod8xc35'
  -e 'USERMAP_UID'='99'
  -e 'USERMAP_GID'='100'
  -l net.unraid.docker.managed=dockerman
  -l net.unraid.docker.webui='http://[IP]:[PORT:8000]'
  -l net.unraid.docker.icon='https://raw.githubusercontent.com/selfhosters/unRAID-CA-templates/master/templates/img/paperless.png'
  -p '8000:8000/tcp'
  -v '/mnt/user/appdata/paperless-ngx/data':'/usr/src/paperless/data':'rw'
  -v '/mnt/user/share_paperless-ngx_data/media':'/usr/src/paperless/media':'rw'
  -v '/mnt/user/share_paperless-ngx_data/consume':'/usr/src/paperless/consume':'rw'
  -v '/mnt/user/share_paperless-ngx_data/export':'/usr/src/paperless/export':'rw' 'ghcr.io/paperless-ngx/paperless-ngx'
4748222ea35ad314ded13ce3b47a3030cb5de0600d37433d0af9ce07aebc2c15
root@4748222ea35ad314ded13ce3b47a3030cb5de0600d37433d0af9ce07aebc2c15

Cliquez sur l'icône Paperless-ngx dans l'onglet DOCKER et sélectionnez Console.
Dans la console, tapez python manage.py createsuperuser pour créer votre premier utilisateur.
Remplissez un nom d'utilisateur et un mot de passe (L'email peut être laissé vide).

  1. Ouvrez votre navigateur web et allez sur http://<unraid_ip>:8000/ et connectez-vous avec le nom d’utilisateur et le mot de passe nouvellement créés. Paperless-ngx est maintenant en marche !