Kompileringer kjøres av clsi-tjenesten inne i hver Ayakaleaf Pro-pod. Med Sandboxed Compiles slått på ber clsi Docker Engine på noden poden kjører på, om å starte en TeX Live-container for hver kompilering, og gir den prosjektets katalog via stien på den noden. Hvordan sandkassen fungerer og hvilke images som finnes, er beskrevet i Sandboxed Compiles.
Konfigurasjon
Installasjonen setter opp alt: Docker og imagene på nodene i 0. Forbered nodene, innstillingene i 4. Tilpasse instansen din og volumene i 5. Distribuer Ayakaleaf Pro. Innstillingene, alle i ConfigMap-en:
Legge til en TeX Live-versjon
Hent imaget på hver node
Toolkit henter imagene selv; på Kubernetes gjør ingen det. Hent inn i Docker, ikke med crictl: clsi ber Docker om imaget. En kompilering med et image som mangler på noden, mislykkes. List det opp i ConfigMap-en og start på nytt
En node som legges til i klyngen senere, trenger Docker og alle imagene før Ayakaleaf Pro kjører der. Merk slike noder med en etikett, og hold Ayakaleaf Pro på dem med en nodeSelector hvis ikke alle noder oppfyller kravene.
Flere replikaer
Hver replika kompilerer på sin egen node og beholder kompileringsutdataene der, så en bruker må bli værende på replikaen som kompilerte, noe lastbalansererens «sticky»-informasjonskapsel sørger for. Kjør aldri to replikaer på samme node: de ville dele nodens kompileringskataloger. Oppsettet for Horisontal skalering forhindrer dette med podAntiAffinity.
TeX Live-containerne kjører ved siden av poden, utenfor minnegrensen dens og utenfor planleggerens oversikt. La det være ledig minne på nodene til dem, se 0. Forbered nodene.
Testet på Kubernetes
På Kubernetes 1.37 med tre replikaer bak HAProxy, én per node, og TeX Live 2026 og 2025 hentet inn i Docker på hver node, består ende-til-ende-testene våre for Sandboxed Compiles (7 tilfeller): et nytt prosjekt kompileres til en PDF, kompilatorinnstillingene tilbyr begge imagene og bytter mellom dem, XeLaTeX med fontspec, LaTeX-feil og ny kompilering etter rettingen, stopp av en pågående kompilering, og SyncTeX i begge retninger. En belastningstest med 12 brukere som kompilerte et dokument på 600 sider samtidig, kjørte 4 kompileringer per node, se Hva du kan forvente. Sist endret 2. november 2026