Les compilations sont exécutées par le service clsi dans chaque pod Ayakaleaf Pro. Lorsque les compilations isolées sont activées, clsi demande au Docker Engine du nœud sur lequel s’exécute le pod de démarrer un conteneur TeX Live pour chaque compilation, et lui transmet le répertoire du projet via son chemin sur ce nœud. Le fonctionnement de l’isolation et les images disponibles sont décrits dans Compilations isolées.
Configuration
L’installation met tout en place : Docker et les images sur les nœuds dans 0. Préparer les nœuds, les paramètres dans 4. Personnaliser votre instance et les volumes dans 5. Déployer Ayakaleaf Pro. Les paramètres, tous dans le ConfigMap :
Ajouter une version de TeX Live
Récupérer l'image sur chaque nœud
Le Toolkit récupère lui-même les images ; sur Kubernetes, personne ne le fait. Récupérez-les dans Docker, et non avec crictl : clsi demande l’image à Docker. Une compilation avec une image absente du nœud échoue. L'ajouter au ConfigMap et redémarrer
Un nœud ajouté ultérieurement au cluster a besoin de Docker et de toutes les images avant qu’Ayakaleaf Pro ne s’y exécute. Si tous les nœuds ne remplissent pas ces conditions, étiquetez ceux qui les remplissent et maintenez Ayakaleaf Pro sur ces nœuds avec un nodeSelector.
Plusieurs répliques
Chaque réplique compile sur son propre nœud et y conserve le résultat de compilation ; un utilisateur doit donc rester sur la réplique qui a compilé, ce que garantit le cookie de persistance (sticky) de l’équilibreur de charge. N’exécutez jamais deux répliques sur le même nœud : elles partageraient les répertoires de compilation du nœud. La configuration de Mise à l’échelle horizontale l’empêche avec podAntiAffinity.
Les conteneurs TeX Live s’exécutent à côté du pod, en dehors de sa limite de mémoire et hors de la vue de l’ordonnanceur. Laissez de la mémoire libre sur les nœuds pour eux, voir 0. Préparer les nœuds.
Testé sur Kubernetes
Sur Kubernetes 1.37 avec trois répliques derrière HAProxy, une par nœud, et TeX Live 2026 et 2025 récupérés dans Docker sur chaque nœud, nos tests de bout en bout des compilations isolées réussissent (7 cas) : un nouveau projet se compile en PDF, les paramètres du compilateur proposent les deux images et permettent de passer de l’une à l’autre, XeLaTeX avec fontspec, erreurs LaTeX et recompilation après correction, arrêt d’une compilation en cours, et SyncTeX dans les deux sens. Un test de charge avec 12 utilisateurs compilant simultanément un document de 600 pages a exécuté 4 compilations par nœud, voir À quoi s’attendre. Dernière modification le 2 novembre 2026