Skip to main content
Projektfiler och deras historik lagras av tjänsten history-v1 och mallfiler av tjänsten filestore, båda i varje Ayakaleaf Pro-pod. Som standard skriver de till datavolymen; med S3 skriver de till buckets. Vilka buckets och behörigheter som behövs beskrivs i S3.
Välj S3 innan användarna skapar projekt. En instans som redan lagrar filer på sin volym behöver först genomgå S3-migreringen.

Konfiguration

1

Buckets och nycklar

Skapa de tre bucketsen overleaf-template-files, overleaf-project-blobs och overleaf-chunks och de två begränsade användarna i din S3-tjänst enligt beskrivningen i Konfiguration av S3, eller kör Garage i klustret enligt nedan. Lägg de fyra nycklarna i en Secret:
2

ConfigMap

30-config.yaml (additions)
3

Lägg till Secret:en i podden och starta om

I Deployment:en (eller StatefulSet:en) lägger du till Secret:en bredvid de andra:

Garage i klustret

Utan en S3-tjänst är Garage en liten S3-server som körs i klustret. Konfigurationen för Horisontell skalning testades med den. Kommandona nedan genererar nycklarna och skapar själva Secret:en overleaf-s3, så använd dem i stället för Secret-kommandot i steg 1.
MinIO, som används i Overleafs exempel, publicerar inte längre containeravbildningar: minio/minio har försvunnit från Docker Hub och quay.io.
50-garage.yaml
Generera hemligheterna, starta Garage och skapa sedan layouten, buckets och de två begränsade nycklarna. Nyckel-ID:n i Garage är GK följt av 24 hexadecimala tecken, och hemligheterna är 64 hexadecimala tecken:
Behörigheterna motsvarar policyerna i S3. Garage kontrollerar regionen: här är den garage, och OVERLEAF_*_S3_REGION måste vara densamma. Med Garage anger du ändpunkten, PATH_STYLE: "true" och regionen garage för båda tjänsterna i ConfigMap:en, som i 60-config.yaml i Horisontell skalning.

Flera repliker

Alla repliker måste använda samma buckets och nycklar. Säkerhetskopiera buckets med din S3-leverantörs verktyg; replikernas egna diskar innehåller då inga data som behöver säkerhetskopieras.

Testat på Kubernetes

På Kubernetes 1.37 med tre repliker och Garage enligt ovan klarade sig alla end-to-end-tester på dessa sidor som skapar projekt, laddar upp filer, använder historiken eller publicerar mallar, och efteråt innehöll bucketsen overleaf-project-blobs, overleaf-chunks och overleaf-template-files objekten, medan replikernas egna /var/lib/overleaf/data/history förblev tomma.
Senast ändrad 2 november 2026