# Paperless-ngx — GED locale avec OCR, open source

Paperless-ngx : archivez, classez et retrouvez tous vos documents en local grâce à l'OCR (OCRmyPDF/Tesseract). Interface web, sans cloud, licence GPL-3.0.

URL canonique : https://www.osfria.fr/paperless-ngx.html

---

OSIALab · Documents / RAG

## Paperless-ngx — archiver et retrouver vos documents en local

Paperless-ngx transforme une pile de papiers et de PDF en une **bibliothèque indexée et cherchable** : il passe chaque document à l'OCR, en extrait le texte, propose étiquettes et correspondants, et vous le rend en quelques secondes par mot-clé, date ou tag — le tout sur **votre** infrastructure.

### Fiabilité & transparence

🟡 **Utilisable, avec points d'attention**

- **Maintenance** : v3.0.0 (version bêta début mai 2026) ; rythme actif tous les 14 jours.
- **Adoption** : Projet établi, base utilisateurs stable, communauté active.
- **Sécurité** : 6 failles majeures identifiées (BOLA, IDOR, escalade de privilèges, traversée de répertoire) — ✅ patchées dans les versions récentes.
- **Verdict** : GED fiable pour archiver et chercher. Maintenez-le à jour, isolez l'instance Django/PostgreSQL sur votre réseau, et controllez l'accès aux dossiers surveillés.

> Page informative, sans valeur de conseil. Installez depuis la **source officielle**, vérifiez la **licence** du logiciel, et gardez en tête qu'un OCR **peut se tromper** sur un document dégradé : contrôlez les pièces importantes.

### À quoi ça sert

Paperless-ngx est un système de **gestion électronique de documents** (GED) open source. Vous déposez un fichier dans un dossier surveillé ; il le détecte, le passe à l'**OCR**, en extrait le texte intégral, devine la date, propose un type, des étiquettes et un correspondant, puis archive le tout dans une base indexée. Ensuite, une recherche plein texte retrouve n'importe quel document en quelques secondes.

Ce n'est **pas un chatbot** : Paperless-ngx range et retrouve, il ne « discute » pas avec vos documents. En revanche, parce qu'il produit un texte propre et structuré, il constitue une excellente **source en amont d'un RAG** — on branche ensuite un outil comme [AnythingLLM](https://www.osfria.fr/anythingllm.html) ou [Khoj](https://www.osfria.fr/khoj.html) pour l'interrogation en langage naturel.

### Ce qui fait sa force

- **Un OCR éprouvé.** Paperless-ngx s'appuie sur **OCRmyPDF** (moteur **Tesseract**) : il ajoute une couche texte sélectionnable aux PDF scannés tout en conservant l'image d'origine. Vous gardez le document tel quel, mais il devient cherchable.
- **Classement automatique qui apprend.** Au fil de vos validations, l'outil affine la suggestion d'étiquettes, de types et de correspondants. Plus on l'utilise, moins on trie à la main.
- **Tout reste chez vous.** Aucune dépendance à un service en ligne : base de données, fichiers et index vivent sur votre machine ou votre serveur. C'est une vraie alternative locale aux GED cloud.
- **Une architecture robuste et standard.** Application **Django**, base **PostgreSQL**, files de tâches via **Redis**, et — en option — **Apache Tika** et **Gotenberg** pour ingérer les documents bureautiques (Word, Excel, PowerPoint). Des briques connues, faciles à sauvegarder et à superviser.
- **Projet vivant et documenté.** Reprise communautaire très active de l'ancien Paperless-ng, avec des releases fréquentes et une documentation soignée.

### Pour qui

Pour les particuliers et les petites structures qui veulent en finir avec les classeurs et les PDF éparpillés — sans confier leurs documents à un service cloud. Niveau requis : **avancé** pour l'installation (Docker Compose, quelques variables à régler) ; une fois en place, l'usage quotidien est très accessible. Pour préparer en amont des PDF complexes destinés à un RAG, voyez [Docling](https://www.osfria.fr/docling.html).

### Installation

#### Prérequis

Docker et Docker Compose, sur votre machine ou un serveur local. Comptez Redis ≥ 6 et une base PostgreSQL — le fichier Compose officiel les inclut.

#### Déploiement avec Docker Compose

La méthode recommandée part d'un fichier `docker-compose.yml` fourni par le projet (variante avec PostgreSQL et Tika) :

```
# Récupérer la configuration officielle
curl -O https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/docker/compose/docker-compose.postgres-tika.yml
curl -O https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/docker/compose/docker-compose.env

# Adapter la configuration : mots de passe, fuseau, langue d'OCR
# (éditer le fichier docker-compose.env)

# Lancer la pile
docker compose -f docker-compose.postgres-tika.yml up -d
```

L'interface est ensuite accessible sur `http://localhost:8000`.

#### Créer le compte administrateur

```
docker compose run --rm webserver createsuperuser
```

#### Importer vos premiers documents

Déposez vos fichiers dans le dossier de consommation (le *consume*, défini dans la config). Paperless-ngx les détecte, lance l'OCR, en extrait le texte et les ajoute à votre bibliothèque. Pensez à régler la **langue d'OCR** (ex. `fra`) pour de bons résultats sur du français.

### Points de vigilance

Paperless-ngx garde tout en local : les vrais points portent sur la *sauvegarde* de votre archive et sur l'*exposition réseau* si vous le rendez accessible à distance.

| Point d'attention | Niveau | Ce qu'il faut savoir |
| --- | --- | --- |
| Sauvegarde de l'archive | 🔴 sans sauvegarde | Votre bibliothèque vit dans trois volumes : les documents (*media*), la base PostgreSQL (métadonnées, tags, index) et la configuration. Une panne disque sans sauvegarde, c'est l'archive perdue. Sauvegardez les volumes **et** un dump de la base, régulièrement. |
| Exposition de l'interface sur Internet | 🔴 si exposé en direct | Le port 8000 sert une interface qui contient potentiellement tous vos documents. Ne l'ouvrez jamais directement sur Internet : placez-le derrière un reverse-proxy HTTPS (Nginx, Caddy) avec authentification, ou un VPN. |
| Fidélité de l'OCR | 🟡 selon le document | Sur un scan net, l'OCR est fiable ; sur un document froissé, basse résolution ou manuscrit, la transcription se dégrade — et un document mal océrisé devient difficile à retrouver. Réglez la bonne langue et contrôlez les pièces critiques. |
| Licence du logiciel | 🟡 à connaître | Paperless-ngx est distribué sous licence **GPL-3.0** (copyleft fort). Pour un usage interne, aucune contrainte particulière ; en cas de **redistribution** d'une version modifiée, la GPL impose de publier le code source correspondant. À lire avant tout projet de distribution. |

### Sécurité

- **N'exposez jamais le port 8000 en direct.** Reverse-proxy (Nginx, Caddy) avec HTTPS et certificat valide, ou accès via VPN uniquement.
- **Mots de passe forts dès l'installation** dans la configuration (compte admin, base de données).
- **Sauvegardez les trois volumes** (documents, base PostgreSQL, config) selon un calendrier régulier — et testez une restauration au moins une fois.
- **Tenez la pile à jour.** Les releases corrigent régulièrement des points de sécurité ; suivez-les sur le dépôt officiel.
- **Restreignez les droits des dossiers de stockage** à l'utilisateur qui exécute Docker.

### Aller plus loin

- [Docling](https://www.osfria.fr/docling.html) — convertir vos PDF en Markdown structuré avant ingestion RAG.
- [AnythingLLM](https://www.osfria.fr/anythingllm.html) — interroger en langage naturel les documents archivés.
- [Khoj](https://www.osfria.fr/khoj.html) — assistant personnel avec recherche dans vos fichiers.
- [OSIALab](https://www.osfria.fr/osialab.html) — vue d'ensemble de tous les outils.

### Sources

- Documentation officielle : **docs.paperless-ngx.com**
- Code source & licence (**GPL-3.0**) : [github.com/paperless-ngx/paperless-ngx](https://github.com/paperless-ngx/paperless-ngx)
- Guide d'installation : [docs.paperless-ngx.com/setup](https://docs.paperless-ngx.com/setup/)
