Skip to main content

Docker

Docker offre un moyen léger et portable d’empaqueter et d’exécuter des applications dans des conteneurs isolés. En regroupant l’application avec toutes ses dépendances, un conteneur garantit un comportement cohérent d’une machine à l’autre, de l’ordinateur portable au serveur de production. TeX Live est puissant, mais volumineux et sensible aux différences entre systèmes. Empaqueter TeX Live dans une image Docker rend la chaîne d’outils LaTeX prévisible, reproductible et facile à distribuer. Cependant, certains paquets TeX Live dépendent d’un accès au shell. Pour des raisons de sécurité, le conteneur doit s’exécuter dans un environnement restreint qui empêche les utilisateurs d’exécuter des commandes shell arbitraires (par exemple via \write18 ou le shell escape). Cette isolation protège le système hôte et évite tout accès involontaire au système de fichiers sous-jacent du conteneur ou à des outils tels que bash.

Édition TeXLive Full

TeXLive-Full@ayaka-notes est une image Docker TeXLive complète, conçue pour la compilation LaTeX en bac à sable dans Ayakaleaf Pro, Overleaf CEP ou des environnements de compilation LaTeX autonomes. Cette image vise à fournir une distribution TeXLive presque complète, avec les polices et outils courants préinstallés, afin de réduire au minimum les échecs de compilation dus à des paquets ou des polices manquants. Remarque : cette image Docker ne contient aucun composant sharelatex/overleaf. Elle sert aux compilations d’Overleaf/Overleaf Pro.

Fonctionnalités :

  • 🚀 Prise en charge des architectures serveur x86_64 et arm64
  • 📦 Installation TeXLive complète et optimisée
  • 🧩 Polices et utilitaires courants préinstallés
  • 🐳 Prête à l’emploi avec Docker et Docker Compose
  • 🧪 Testée avec Overleaf Server Pro / Overleaf Pro
  • 🔄 Mise à jour régulièrement avec les dernières versions de TeXLive
  • 🏷 Plusieurs tags de version TeXLive (de 2020 à la plus récente)
  • 🧑‍🔬 Prise en charge de Knitr pour le code R dans les documents LaTeX

Utilisation avec Ayakaleaf Pro

TeX Live Full par Ayaka-notes est spécialement conçu pour ayakaleaf-pro ; si vous utilisez le Toolkit, vous pouvez ajouter les variables d’environnement suivantes au fichier config/variables.env. Par exemple :
config/variables.env

Versions de TeX Live

Grâce à GitHub Actions, nous pouvons construire toutes les images TeX en parallèle, notamment :
  • ghcr.io/ayaka-notes/texlive-full:2026.1 (également tag latest)
  • ghcr.io/ayaka-notes/texlive-full:2025.1
  • ghcr.io/ayaka-notes/texlive-full:2024.1
  • ghcr.io/ayaka-notes/texlive-full:2023.1
  • ghcr.io/ayaka-notes/texlive-full:2022.1
  • ghcr.io/ayaka-notes/texlive-full:2021.1
  • ghcr.io/ayaka-notes/texlive-full:2020.1
  • ghcr.io/ayaka-notes/texlive-full:base
Nous utilisons l’archive miroir de texlive info, qui contient presque toutes les versions de TeX Live de 1996 à 2025. Et grâce au Dockerfile d’Overleaf, nous pouvons construire ce projet plus rapidement.
Pourquoi TeX Live 2019 et les versions antérieures ne sont-elles pas prises en charge ? La maintenance de ces anciennes images est extrêmement difficile. De plus, le site texlive.info ne fournit pas d’informations pour les versions de TeX Live publiées avant 2019 ; nous ne pouvons donc pas construire d’images pour ces versions. Si vous avez besoin d’une ancienne version précise, ouvrez une issue pour nous le faire savoir.

Composants inclus

Les paquets suivants sont inclus dans l’image Docker.
  • Tous les paquets TeXLive (de l’année concernée)
  • Paquets R (sélection uniquement)
  • fontconfig inkscape pandoc python3-pygments wget python3
  • gnupg gnuplot perl-modules perl ca-certificates
  • ghostscript qpdf r-base-core tar
Les polices suivantes sont incluses dans l’image Docker.
Veuillez vérifier si les polices concernées peuvent être utilisées à des fins commerciales. Nous déclinons toute responsabilité pour les problèmes juridiques découlant d’une utilisation inappropriée des polices. En téléchargeant l’image, vous acceptez automatiquement ces conditions.

Licence

MIT

Problèmes

Lorsqu’Overleaf compile un projet LaTeX et qu’une police est introuvable, la compilation peut prendre beaucoup de temps, car en cas de police manquante, TeX Live tente de reconstruire l’intégralité du cache des polices. Ce processus est long.Dans notre image, le cache des polices est préconstruit ; nous avons corrigé ce problème avec ce commit
Lorsque vous utilisez cette image dans sharelatex, il se peut que SyncTeX soit extrêmement lent.Voir : https://github.com/overleaf/overleaf/issues/1150 ; il suffit de désactiver HTTP 2.0.
Si vous utilisez l’image TeX Live officielle de Docker Hub texlive/texlive, vous constaterez peut-être qu’une erreur est signalée lorsque vous recompilez un projet. Ce problème est corrigé dans notre image, car nous utilisons la dernière image de base Ubuntu et installons toutes les dépendances depuis le dépôt officiel d’Ubuntu.

Autres remarques techniques

Lors de la construction d’images TeX Live (antérieures à 2019), vous devrez peut-être faire attention aux problèmes suivants :
  • Avant TeX Live 2017, seuls http/ftp sont pris en charge ; vous ne pouvez donc pas utiliser https pour le téléchargement, sauf si vous modifiez le script peal.
  • Avant 2015, seul un fichier sha256 est fourni ; vous ne pouvez donc pas utiliser sha512 pour la vérification.
Dernière modification le 4 octobre 2026