S3-migrering
Disse instruksjonene gjelder for v5.x og nyere. Hvis du følger denne veiledningen for en tidligere versjon, bruker du
sharelatex i stedet for overleaf i stinavn og prefikset SHARELATEX_ i stedet for OVERLEAF_ for miljøvariabler. For v6 og nyere hopper du over de eldre user_files-kommandoene.Vi vil gjerne høre fra deg! Hvis du vil fortelle oss hvor mange filer du migrerte, hvor stort det samlede volumet var, og hvor lang tid migreringen tok, kan du sende en e-post til
ayaka-notes@outlook.com .Krav
- En S3-kompatibel objektlagring å kommunisere med, se #s3-setup for alternativer
- Ledig diskplass for migrering av eksisterende data, omtrent like mye som nåværende størrelse på disk
- Et vedlikeholdsvindu for selve migreringen
- En fullstendig sikkerhetskopi, inkludert konfigurasjonen, slik at det er mulig å gjenopprette fra den
Anslå diskplassen som trengs for migreringen
Vi kan brukedu til å beregne nåværende diskbruk:
Historikkatalogene har allerede riktig struktur. Du kan laste opp direkte fra den bind-monterte kildemappen, noe som ikke krever ekstra diskplass.
Migreringstrinn
Trinn 0: slå av instansen
Vi må sørge for at alle bruker-/malfiler blir migrert. Det er best å slå av instansen for å unngå at nylig opplastede filer går tapt. Se veiledningen vår om å ta en konsistent sikkerhetskopi for fremgangsmåten for avslutning.Trinn 1: skriv om katalogstrukturen
Vi må skrive om katalogstrukturen for prosjektfiler for å kunne laste dem opp til S3. Katalogstrukturen for lokal lagring i filestore er<project-id>_<file-id>, mens katalogstrukturen i S3 er <project-id>/<file-id>.
I det følgende brukes /srv/overleaf-s3-migration til å lagre filene i den nye katalogstrukturen. Erstatt /srv/overleaf-bind-mount med vertskatalogen som er montert på /var/lib/overleaf. Kjør kopieringskommandoene på verten med tillatelse til å lese og skrive disse katalogene; containeren forblir stoppet.
Vi kan bruke tar til å skrive om strukturen:
Trinn 2: last opp filene
Avhengig av hva du foretrekker, kan du bruke S3-klienten minio mc eller aws cli til å laste opp filene til den S3-kompatible objektlagringen. aws cli- Her bør du erstatte
overleaf-user-files,overleaf-template-files,overleaf-project-blobsogoverleaf-chunksmed navnene på S3-bøttene dine. - Erstatt også
/srv/overleaf-bind-mountmed den lokale stien til bind-monteringen av/var/lib/overleaf. Som standard er dette~/overleaf_datai en docker-compose.yml-distribusjon og<toolkit-checkout>/data/overleafnår du bruker Toolkit.
Trinn 3: start instansen med peking mot S3
Legg til alle S3-relaterte variabler i konfigurasjonen, som beskrevet i delen Oversikt over variabler i oppsettsveiledningen for S3. Behold bind-monteringen av datakatalogen: den kan også inneholde krypteringsnøkler for Zotero eller Mendeley som ikke migreres til S3. Du kan nå starte instansen og validere migreringen:- binærfiler kan forhåndsvises i editoren
- en PDF med bilder kan kompileres
- nye filer kan lastes opp
Tilbakerulling
Du kan rulle tilbake migreringen på en kontrollert måte ved å reversere trinnene:- Slå av instansen
- Speil filene tilbake ved å bytte om rekkefølgen på kilde/mål
- Skriv nye filer tilbake til den lokale katalogen ved hjelp av en omvendt
transform - Start instansen på nytt med den gamle konfigurasjonen
Den første transformasjonen fjerner mappen på øverste nivå. Den andre transformasjonen endrer katalogstrukturen til en flat struktur. Jokertegnene sørger for at bare filer pakkes ut, ikke de overordnede (prosjekt)mappene deres.

