Skip to main content

S3-migrering

Denne vejledning gælder for v5.x og senere. Hvis du følger vejledningen for en tidligere version, skal du bruge sharelatex i stedet for overleaf i stinavne og præfikset SHARELATEX_ i stedet for OVERLEAF_ for miljøvariabler. For v6 og senere skal du springe de ældre user_files-kommandoer over.
Vi vil meget gerne høre fra dig! Hvis du vil dele med os, hvor mange filer du migrerede, deres samlede omfang, og hvor lang tid migreringen tog, så send en e-mail til ayaka-notes@outlook.com .
Denne vejledning fører dig gennem migreringen fra lagring på disk til et S3-kompatibelt objektlager. Den henviser til afsnit i introduktionsdokumentet om S3-opsætning.

Krav

  • Et S3-kompatibelt objektlager at kommunikere med, se #s3-setup for muligheder
  • Ledig diskplads til migrering af eksisterende data, omtrent svarende til den nuværende størrelse på disk
  • Et vedligeholdelsesvindue til selve migreringen
  • En fuld sikkerhedskopi, inklusive konfigurationen, så der kan gendannes fra den

Estimer den diskplads, der kræves til migreringen

Vi kan bruge du til at beregne det nuværende diskforbrug:
Hvis du ikke har tilstrækkelig diskplads til rådighed på den nuværende server, kan du prøve at tilslutte endnu en disk til serveren.
Historikmapperne har allerede det korrekte layout. Du kan uploade direkte fra den bind-mountede kildemappe, hvilket ikke kræver yderligere diskplads.

Migreringstrin

Trin 0: Luk instansen ned

Vi skal sikre, at alle bruger-/skabelonfiler bliver migreret. Det er bedst at lukke instansen ned for at undgå at gå glip af nyligt uploadede filer. Se vores vejledning i at udføre en konsistent sikkerhedskopiering for nedlukningsproceduren.

Trin 1: Omskriv mappelayoutet

Vi skal omskrive mappelayoutet for projektfiler for at kunne uploade dem til S3. Mappelayoutet for lokal lagring i filestore er <project-id>_<file-id>, og mappelayoutet i S3 er <project-id>/<file-id>. I det følgende bruges /srv/overleaf-s3-migration til at gemme filerne i det nye mappelayout. Erstat /srv/overleaf-bind-mount med den mappe på værten, der er monteret på /var/lib/overleaf. Kør kopieringskommandoerne på værten med tilladelse til at læse og skrive i disse mapper; containeren forbliver stoppet. Vi kan bruge tar til at omskrive layoutet:

Trin 2: Upload filerne

Afhængigt af dine præferencer kan du bruge S3-klienten minio mc eller aws cli til at uploade filerne til dit S3-kompatible objektlager. aws cli
  • Her skal du erstatte overleaf-user-files, overleaf-template-files, overleaf-project-blobs og overleaf-chunks med navnene på dine S3-buckets.
  • Erstat også /srv/overleaf-bind-mount med den lokale sti til bind-mountet for /var/lib/overleaf. Som standard er dette ~/overleaf_data i en installation med docker-compose.yml og <toolkit-checkout>/data/overleaf, når du bruger Toolkit.
minio mc Vi bruger serveraliaset “s3” her; du har muligvis valgt et andet navn.

Trin 3: Start instansen med S3 som lager

Tilføj alle S3-relaterede variabler til din konfiguration som beskrevet i afsnittet Oversigt over variabler i opsætningsvejledningen til S3. Behold bind-mountet for datamappen: det kan også indeholde krypteringsnøgler til Zotero eller Mendeley, som ikke migreres til S3. Du kan nu starte instansen og validere migreringen:
  • binære filer kan forhåndsvises i editoren
  • en PDF med billeder kan kompileres
  • nye filer kan uploades

Tilbagerulning

Du kan rulle migreringen tilbage på en kontrolleret måde ved at udføre trinnene i omvendt rækkefølge:
  1. Luk instansen ned
  2. Spejl filerne tilbage ved at bytte om på rækkefølgen af kilde/destination
  3. Skriv nye filer tilbage til den lokale mappe ved hjælp af en omvendt transform
  4. Genstart instansen med den gamle konfiguration
Den første transform fjerner mappen på øverste niveau. Den anden transform ændrer mappelayoutet til et fladt layout. Wildcards sikrer, at kun filer udpakkes, ikke deres overordnede (projekt)mapper.
Sidst ændret 5. oktober 2026