Skip to main content
Det er noen små forskjeller mellom utviklings- og produksjonsmiljøet hvis du vil sette opp sandkassekompilering for utvikling. Det er tre ting du må være oppmerksom på:
  • Problem med filtillatelser
  • Delt volum mellom history-v1 og filestore
  • Problem med underkataloger

Aktiver Sandbox Compiles

Her trenger vi bare å aktivere Sandbox Compiles slik vi gjør i Overleaf CE. Vi må imidlertid være oppmerksomme på brukeren. Her setter vi den til root. I produksjonsmiljøet bruker vi www-data som en delt bruker mellom Overleaf-containeren og TeX-kompileringscontaineren. I utviklingsmiljøet er imidlertid node standardbrukeren i containeren, og det finnes ingen www-data-bruker å koble dette til. Derfor bruker vi root som en midlertidig løsning.
Ikke bruk et image du har bygget selv, da kan du støte på en rekke feil.

Rett opp filtillatelser

LaTeX kjører i søskencontainerne som brukeren angitt i miljøvariabelen TEXLIVE_IMAGE_USER. I eksempelet ovenfor er denne satt til root, som har uid 0. Dette skaper et problem med tillatelsene ovenfor, siden root-brukeren ikke har tillatelse til å skrive til underkataloger av compiles. En rask løsning er å gi gruppen root eierskap og lese- og skrivetillatelser til compiles, med setgid satt slik at nye underkataloger også arver dette eierskapet:
bash
For mer detaljert dokumentasjon, se services/clsi/README.md.

Delt volum mellom history-v1 og filestore

Som standard fungerer filestore som en bro mellom S3 og andre tjenester i Overleaf. I Overleaf CE eller Server Pro lagres imidlertid alle filer lokalt som standard. Derfor har Overleaf innført en ganske innviklet metode.
server-ce/config/settings.js
Samtidig brukes data/history også av history-tjenesten. På denne måten kan de dele de samme dataene mellom ulike mikrotjenester. Du må legge til volumet history-v1-buckets i filestore-tjenesten i utviklingsmiljøet. Ellers vil ikke clsi kunne hente blob-filer fra filestore-tjenesten.
develop/docker-compose.yml
Du må også legge til BUCKET-navnet i dev.env-innstillingene:
develop/dev.env

Bruk underkataloger

Filestore bruker useSubdirectories satt til true som standard, men i utviklingsmiljøet vil history v1 flate ut alle dataene. Dette fører til konflikter. For å løse dette må du legge til følgende:
develop/dev.env
I history v1 lagres alle project_blobs-filer opprinnelig slik:
Du må sette useSubdirectories til true for å bytte til underkatalogmodus. Da erstattes den opprinnelige _ i blob-navnet med /.
Sist endret 5. oktober 2026