En recherchant une boite à outils pour travailler sur les PDF, je suis tombé sur le logiciel libre et gratuit Stirling PDF. L'outil est facilement installable et configurable avec Docker et présente les avantages d'être centralisé et auto-hébergeable.
[Update 07/06/2024] : mise à jour des variables d'environnement dans docker-compose.yml
[Update 22/06/2024] : mise en place du SSO ici : Stirling-PDF + Authelia + Traefik + LLDAP = ❤️
Le logiciel Stirling PDF est accessible via votre navigateur web et présente les fonctionnalités suivantes (liste non exhaustive) :
Liste complète des fonctionnalités
L'application est sous licence GPL-3.0.
mkdir /srv/stirling-pdf
cd /srv/stirling-pdf
vim docker-compose.yml
services:
stirling-pdf:
image: frooodle/s-pdf:latest
ports:
- '8181:8080'
volumes:
- /usr/share/tesseract-ocr/4.00/tessdata:/usr/share/tesseract-ocr/4.00/tessdata
environment:
SYSTEM_DEFAULTLOCALE: fr-FR
LANGS: fr-FR
UI_APPNAME: Boite à outils PDF
UI_HOMEDESCRIPTION: Votre guichet unique hébergé localement pour travailler sur vos PDF.
UI_APPNAVBARNAME: Boite à outils PDF
restart: unless-stopped
Ne démarrez pas de suite le conteneur.
Pour la reconnaissance OCR, il nous faut installer un paquet pour la langue française :
apt install tesseract-ocr-fra
Vous pouvez démarrer le conteneur docker.
docker compose up -d
N'ayant pas l'utilité d'exposer le service sur Internet, j'utilise un nom de portée locale et ma propre PKI pour les certificats.
server {
listen 443 ssl http2;
server_name pdf.mondomaine.lan;
ssl_certificate /etc/nginx/ssl/pdf.mondomaine.lan/cert-pdf.crt;
ssl_certificate_key /etc/nginx/ssl/pdf.mondomaine.lan/cert-pdf.key;
# Specify SSL config if using a shared one.
include conf.d/ssl/ssl.conf;
# Allow large attachments
client_max_body_size 128M;
location / {
proxy_pass http://127.0.0.1:8181;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
access_log /var/log/nginx/pdf.access.log;
error_log /var/log/nginx/pdf.error.log;
}
Connectez-vous à l'interface web depuis votre navigateur web (Firefox dans mon cas) : https://pdf.mondomaine.lan
Je ne vais pas détailler l'ensemble des fonctionnalités mais celles testées fonctionnent parfaitement bien.
Personnellement je trouve l'outil tout simplement génial. Il est complet et permet de rivaliser avec les outils payants. Qui plus est, il est auto-hébergeable et donc évite à vos utilisateurs d'utiliser des sites en ligne avec le risque de fuites de données. Vous pouvez tester la version en démo sur https://pdf.adminforge.de/
Source : Dépôt Github Stirling-PDF