CyberSDF

Reprenez la main sur votre numérique

Installer Stirling PDF sur Linux avec Docker

Scanner de documents en aluminium avec une feuille blanche et un voyant ambre.
Illustration d'un scanner pour un tutoriel sur le traitement local des PDF.

Réponse courte : créez un dossier de données, lancez Stirling PDF avec Docker Compose sur 127.0.0.1:8080, gardez l’authentification active et utilisez l’outil Merge pour réunir vos PDF. La recette ci-dessous fixe l’image sur la version 2.14.3 au lieu de suivre latest.

Sommaire
  1. Vérifier Docker, le port et le dossier de données
  2. Écrire un Compose minimal, mais durable
  3. Le premier accès est protégé par défaut
  4. Fusionner deux PDF sans les envoyer à un service tiers
  5. Ajouter l’OCR et conserver les réglages au bon endroit
  6. Mettre à jour et automatiser après la première réussite
  7. Quand Stirling PDF n’est pas le bon choix

Le service reste lié à 127.0.0.1 et n’est donc pas ouvert aux autres machines par défaut. Validez le fichier avec docker compose config --quiet, lancez ensuite le conteneur, puis ouvrez l’interface locale.

Vérifier Docker, le port et le dossier de données

Stirling PDF peut tourner sur Linux avec Docker, puis traiter les fichiers dans votre propre instance. Il vous faut Docker Engine avec le plugin Compose, un port local libre et un dossier où les réglages pourront rester après le redémarrage du conteneur.

docker --version
docker compose version
ss -ltn | grep ':8080' || true

La dernière commande ne doit rien afficher si le port 8080 est libre. S’il est déjà utilisé, choisissez un autre port à gauche du fichier Compose, par exemple 127.0.0.1:9000:8080. Le premier nombre est le port visible sur votre machine ; le second reste le port interne de Stirling PDF.

Préparez ensuite les répertoires qui seront montés dans le conteneur :

mkdir -p "$HOME/stirling-pdf/stirling-data/configs"
mkdir -p "$HOME/stirling-pdf/stirling-data/logs"
mkdir -p "$HOME/stirling-pdf/stirling-data/pipeline"
mkdir -p "$HOME/stirling-pdf/stirling-data/tessdata"
cd "$HOME/stirling-pdf"

Le processus Docker doit pouvoir lire et écrire ces chemins. Si l’interface signale une erreur de permission, commencez par ls -ld stirling-data stirling-data/* et relisez les droits du compte qui lance Docker. Le guide sur les permissions et utilisateurs Linux explique la différence entre propriétaire, groupe et droit d’écriture.

Écrire un Compose minimal, mais durable

Créez docker-compose.yaml dans $HOME/stirling-pdf :

services:
  stirling-pdf:
    image: docker.stirlingpdf.com/stirlingtools/stirling-pdf:2.14.3
    container_name: stirling-pdf
    ports:
      - "127.0.0.1:8080:8080"
    volumes:
      - ./stirling-data/configs:/configs
      - ./stirling-data/logs:/logs
      - ./stirling-data/pipeline:/pipeline
      - ./stirling-data/tessdata:/usr/share/tessdata
    restart: unless-stopped

Le tag 2.14.3 correspond à une release publiée le 6 août 2026. Le manifeste du registre lu le 17 septembre 2026 annonce des variantes Linux amd64 et arm64 pour ce tag. Une version fixée rend le retour arrière lisible : vous changez le tag volontairement, au lieu de recevoir une nouvelle image au prochain pull.

Avant de démarrer, demandez à Compose de lire le fichier :

docker compose config --quiet
docker compose config --images

Le 17 septembre 2026, le fichier proposé a renvoyé le code 0 avec docker compose config --quiet. La commande config --images a renvoyé :

docker.stirlingpdf.com/stirlingtools/stirling-pdf:2.14.3

Le code 0 confirme que Compose lit la définition ; l’état du conteneur et l’ouverture de l’interface confirment le lancement réel.

La documentation du déploiement Docker de Stirling PDF décrit aussi une variante courte avec latest. Le tag fixé est préférable pour une installation que vous devrez relire ou mettre à jour à une date précise.

Le premier accès est protégé par défaut

Démarrez le service depuis le dossier qui contient le fichier Compose :

docker compose up -d
docker compose ps
docker compose logs --tail=50 stirling-pdf

Ouvrez ensuite http://127.0.0.1:8080. La documentation Docker actuelle indique que la connexion est activée par défaut et donne admin et stirling pour le premier accès. Changez ce mot de passe immédiatement, puis vérifiez que vous pouvez vous déconnecter et vous reconnecter.

N’ajoutez pas SECURITY_ENABLELOGIN=false simplement parce qu’une ancienne recette en contient la valeur. Cette variable désactive la connexion et retire le compte administrateur initial ; elle ne convient qu’à un service réellement isolé dont vous avez déjà borné l’accès. Pour un accès depuis un autre ordinateur, gardez l’application derrière une connexion HTTPS et une authentification adaptée au réseau.

Le répertoire stirling-data/configs conserve les réglages et la base de l’application. Si le conteneur redémarre avec une configuration neuve, contrôlez d’abord le chemin du volume et le dossier depuis lequel docker compose a été lancé.

Fusionner deux PDF sans les envoyer à un service tiers

La première opération doit être petite et vérifiable. Préparez deux fichiers PDF sans données sensibles, ouvrez l’outil Merge, déposez les fichiers, puis regardez l’ordre des pages avant d’exporter.

  1. Ouvrez la liste des outils et choisissez Merge.
  2. Ajoutez les deux PDF et placez le document de couverture en première position si nécessaire.
  3. Lancez la fusion, téléchargez le résultat et ouvrez-le avec votre lecteur PDF.
  4. Vérifiez le nombre de pages et le premier titre avant de remplacer un original.

La documentation des opérations sur les pages PDF distingue la fusion, l’extraction, la suppression, la rotation et la réorganisation. Commencer par la fusion permet de vérifier le transfert, l’ordre des fichiers et le téléchargement avec une action réversible.

Pour un fichier qui refuse de s’ouvrir, commencez par le journal du conteneur :

docker compose logs --tail=100 stirling-pdf

Gardez le fichier original à côté du résultat jusqu’à ce que le PDF exporté soit lisible. Pour classer et conserver les documents, prévoyez en plus une organisation de stockage et de sauvegarde adaptée.

Ajouter l’OCR et conserver les réglages au bon endroit

Le Compose précédent monte quatre emplacements distincts :

Ajoutez dans le dossier tessdata les données de langues dont votre instance a besoin, puis vérifiez l’OCR sur une copie d’un document scanné. Le résultat attendu est un texte sélectionnable ; regardez aussi les noms propres et les nombres, qui révèlent vite une reconnaissance imparfaite.

Ne confondez pas traitement et archivage. Stirling PDF modifie, convertit, compresse ou reconnaît des PDF ; un service de classement doit répondre à d’autres contraintes de recherche, de conservation et de restauration. Pour manipuler une archive ZIP ou RAR avant l’import, utilisez plutôt le tutoriel sur 7-Zip sous Linux.

Mettre à jour et automatiser après la première réussite

Quand la version suivante est choisie, remplacez le tag dans docker-compose.yaml, validez le fichier, puis faites la mise à jour :

docker compose config --quiet
docker compose pull
docker compose up -d
docker compose ps

Conservez le dossier stirling-data et une copie de votre fichier Compose avant l’opération. Si le service revient avec une configuration par défaut, arrêtez la modification et contrôlez le chemin des volumes avant de supprimer quoi que ce soit.

Stirling PDF expose une documentation Swagger sur /swagger-ui.html. Elle montre les endpoints et les champs acceptés par la version réellement lancée. L’API officielle documente des catégories comme general, security et pipeline, ainsi que POST /api/v1/pipeline/handleData. Quand la sécurité est active, la documentation prévoit une clé globale et l’en-tête X-API-KEY. Commencez par reproduire une opération dans l’interface avant d’enregistrer un workflow automatisé.

La documentation API de Stirling PDF indique aussi que certaines fonctions restent propres à l’interface web. Un script ne doit donc pas supposer que chaque bouton possède un endpoint public équivalent.

Quand Stirling PDF n’est pas le bon choix

Stirling PDF convient à une machine qui doit transformer des PDF sans les envoyer automatiquement vers un service en ligne. Le choix change si le besoin principal est la synchronisation entre plusieurs appareils, le partage de dossiers avec des comptes distincts ou l’archivage à long terme. Dans ces cas, comparez d’abord la fonction attendue, la sauvegarde et la restauration, puis le logiciel.

La page Logiciels utiles donne le cadre de choix, et la page sur le partage de fichiers depuis Debian traite les comptes, les droits et l’accès depuis le réseau. Pour une instance locale, gardez le port lié à 127.0.0.1 tant que l’accès extérieur n’est pas une décision explicite.

La recette fiable tient en quatre gestes : versionner l’image, conserver l’authentification, vérifier les volumes et tester une petite fusion avant de confier à Stirling PDF des documents de travail.