Une facture fournisseur de 2023, un contrat signé il y a deux ans, un courrier de l'administration reçu le mois dernier. Vous savez qu'ils existent quelque part : dans un dossier scanné, une pièce jointe d'email, un classeur physique. Les retrouver vous prend dix minutes, ou vous ne les retrouvez pas. Multipliez par tous les documents qu'une entreprise accumule, et vous mesurez le coût d'une dématérialisation ratée. Paperless-ngx règle ça : vous jetez un PDF dans un dossier, et il devient cherchable, classé, retrouvable en deux secondes, sans qu'aucun SaaS ne mette la main sur vos documents.
C'est une gestion électronique de documents qu'on installe chez soi, qu'on contrôle, qu'on sauvegarde. Pas un abonnement, pas un cloud tiers qui détient vos contrats. Le fork communautaire qui a repris le flambeau d'un projet abandonné, et qui tourne aujourd'hui sur des milliers d'installations.
Le besoin : retrouver, pas seulement stocker
Stocker des documents, n'importe quel disque le fait. Le problème n'a jamais été le stockage, c'est la récupération. Une arborescence de dossiers 2023/Factures/Fournisseurs/ se dégrade en quelques mois : on ne sait plus si la facture EDF est dans Factures ou dans Energie, le scan s'appelle scan_0042.pdf, et personne ne se souvient de la convention de nommage décidée il y a un an. La GED maison meurt de son propre désordre.
La tentation, c'est le SaaS. On confie ses documents à un service en ligne, qui range et indexe. Sauf que vos factures, vos contrats, vos courriers administratifs sont parmi les données les plus sensibles de l'entreprise, et les confier à un tiers, c'est accepter qu'il les détienne, sous son droit, avec sa politique de rétention et ses conditions qui changent. Pour de l'archivage légal, dépendre d'un fournisseur qui peut fermer, augmenter ses tarifs ou être racheté est un risque qu'on ne devrait pas prendre à la légère.
Paperless-ngx répond aux deux problèmes d'un coup. Il indexe et classe automatiquement, donc la récupération devient triviale. Et il s'auto-héberge, donc les documents restent chez vous, sous votre contrôle, sous droit français si vous l'hébergez en France. La même logique que pour un intranet d'entreprise auto-hébergé : la donnée sensible ne sort pas.
Comment ça marche
Le cœur du système tient en un mot : le dossier de consommation, le « consume folder ». Vous y déposez un document, par scan, par glisser-déposer, par email entrant, et Paperless-ngx le prend en charge automatiquement. C'est le seul geste manuel, le reste s'enchaîne tout seul.
Première étape, l'OCR. Un PDF scanné n'est qu'une image, illisible par une machine. Paperless-ngx passe chaque document dans Tesseract (github.com/tesseract-ocr/tesseract), le moteur de reconnaissance optique de caractères libre, qui extrait le texte et le rend cherchable. Une facture scannée devient un document dont chaque mot est indexé. La recherche plein texte trouve ensuite « EDF » ou « avenant » dans le contenu, pas seulement dans le nom du fichier. C'est ce qui transforme une pile de scans morts en archive vivante.
Deuxième étape, le classement automatique. Paperless-ngx apprend à reconnaître les documents et leur attribue des correspondants (qui a émis le document), des types (facture, contrat, courrier) et des étiquettes (tags). Au début on corrige, ensuite le système s'entraîne sur vos corrections et range de mieux en mieux tout seul. La documentation officielle (docs.paperless-ngx.com) détaille cette classification par apprentissage, qui réduit l'effort de tri à mesure que la base grandit.
Le résultat, c'est une interface web où l'on retrouve n'importe quel document par recherche, par correspondant, par type, par date, par tag, en quelques secondes. La promesse de la dématérialisation tenue : le papier disparaît, l'information reste accessible.
Le déploiement Docker
Paperless-ngx se déploie en conteneurs, et la documentation officielle (docs.paperless-ngx.com) recommande Docker Compose. Le système n'est pas monolithique, il s'appuie sur plusieurs services qui travaillent ensemble.
L'application principale orchestre le tout. Une base de données PostgreSQL stocke les métadonnées, les index, la configuration. Redis sert de file d'attente pour les tâches de fond, notamment l'OCR qui s'exécute de façon asynchrone pour ne pas bloquer l'interface. Et pour les documents bureautiques (Word, Excel, ODT), deux services optionnels mais utiles convertissent en PDF avant indexation : Gotenberg (gotenberg.dev), une API de conversion en conteneur, et Apache Tika (tika.apache.org), qui extrait texte et métadonnées de centaines de formats.
L'ensemble se résume à un docker-compose.yml qui assemble ces briques :
services:
broker:
image: redis:7
volumes:
- redisdata:/data
db:
image: postgres:16
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: changeme
volumes:
- pgdata:/var/lib/postgresql/data
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
depends_on:
- db
- broker
- gotenberg
- tika
ports:
- '8000:8000'
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
PAPERLESS_OCR_LANGUAGE: fra
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./consume:/usr/src/paperless/consume
gotenberg:
image: gotenberg/gotenberg:8
command:
- 'gotenberg'
- '--chromium-disable-javascript=true'
tika:
image: apache/tika:latest
volumes:
redisdata:
pgdata:
data:
media:
Le PAPERLESS_OCR_LANGUAGE: fra indique à Tesseract de reconnaître le français, point qu'on oublie souvent et qui dégrade l'OCR sur des documents accentués. Une fois lancé, le dossier ./consume devient la boîte aux lettres : tout fichier qui y atterrit est traité.
La sauvegarde, le point qui tue
Voici le piège classique, et il est mortel. On déploie Paperless-ngx, on y verse des années de documents, on jette les originaux papier, et on n'a pas de sauvegarde. Le jour où le volume Docker se corrompt ou où le serveur lâche, on a perdu l'intégralité des archives de l'entreprise, originaux compris. La dématérialisation sans sauvegarde, c'est de la destruction de documents avec une étape intermédiaire.
Deux choses doivent être sauvegardées, et les deux comptent. Les documents eux-mêmes, stockés dans le volume media, qui sont l'archive brute. Et la base PostgreSQL, qui contient les métadonnées, le classement, les index, sans quoi les documents existent mais sont à nouveau une pile illisible. Sauvegarder l'un sans l'autre ne sert à rien.
Paperless-ngx fournit l'outil propre pour ça : le document_exporter, documenté dans la section administration (docs.paperless-ngx.com). Il exporte documents et métadonnées dans un format cohérent et réimportable, ce qui garantit une restauration fonctionnelle, pas juste une copie de fichiers. On le lance en tâche planifiée :
docker compose exec webserver document_exporter ../export
Cet export devient ensuite la source d'une vraie stratégie de sauvegarde. On l'envoie hors de la machine, chiffré, avec de la rétention et de l'immutabilité pour résister à un ransomware. C'est exactement le rôle d'un outil comme restic pour des sauvegardes chiffrées et déduplicées, intégré dans une stratégie de sauvegarde complète avec copie distante et restauration testée. Et les secrets de l'instance (mots de passe de base, clés) méritent leur propre coffre, type Vault déployé proprement, plutôt qu'en clair dans un fichier d'environnement.
La règle qu'on applique : pas de mise en production d'une GED sans sauvegarde testée des documents et de la base. Une restauration jamais essayée n'est pas une sauvegarde, c'est un pari sur l'avenir des archives légales de l'entreprise.
Verdict ops
Pour dématérialiser sans se livrer pieds et poings liés à un SaaS, Paperless-ngx est le bon choix. OCR qui rend tout cherchable, classement qui s'améliore tout seul, recherche instantanée, le tout sur une infrastructure que vous contrôlez et hébergez où vous voulez. Pour de l'archivage d'entreprise, des factures aux contrats, c'est mûr, vivant, et auto-hébergeable proprement en Docker.
La seule condition, mais elle est absolue : la sauvegarde. Documents plus base PostgreSQL, exportés avec document_exporter, envoyés hors site, chiffrés, avec restauration testée. Sans ça, vous ne dématérialisez pas, vous transférez vos archives vers un point de défaillance unique. C'est la différence entre une GED qui sécurise votre patrimoine documentaire et une bombe à retardement bien rangée.
Déployer Paperless-ngx est simple, le sécuriser et le sauvegarder dans les règles l'est moins : conteneurs maintenus, base répliquée, export planifié, sauvegarde immuable testée. Si vous voulez une GED souveraine sans porter la charge d'exploitation, on peut la déployer et garantir la sauvegarde de vos documents.
Sources
- Paperless-ngx, documentation officielle : la référence du projet, fonctionnement, OCR, classification et recherche plein texte.
- Paperless-ngx, guide d'installation : la procédure de déploiement Docker Compose avec PostgreSQL, Redis, Tika et Gotenberg.
- Paperless-ngx, administration et sauvegarde : l'usage du
document_exporterpour exporter et restaurer documents et métadonnées. - Tesseract OCR : le moteur de reconnaissance optique de caractères libre qui rend les documents scannés cherchables.
- Gotenberg : l'API de conversion de documents bureautiques en PDF, en conteneur, intégrée à Paperless-ngx.
- Apache Tika : l'extracteur de texte et de métadonnées multi-format utilisé pour indexer les documents Office.


