Kun päivität uuteen Docker-imageen, kaikki siirrot, joita ei ole vielä ajettu, suoritetaan automaattisesti. Tämä voi kestää jonkin aikaa tietomääräsi koosta riippuen, ja lokien seuraaminen kertoo edistymisestä. Lisätietoja on Logging-dokumentaatiossamme.
Tietojen tallennus
Overleaf Community Edition ja Server Pro tallentavat tietonsa kolmeen erilliseen paikkaan:- MongoDB-tietokanta: Täällä sijaitsevat käyttäjä- ja projektitiedot.
- Redis: toimii suorituskykyisenä välimuistina käsittelyssä oleville tiedoille ja tallentaa pääasiassa projektien muokkauksiin ja yhteistyöhön liittyviä tietoja.
- Overleafin tiedostojärjestelmä: tallentaa projektien ei-muokattavat tiedostot (kuvat mukaan lukien) ja toimii myös väliaikaisena levyvälimuistina projektien käännösten aikana.
Tämä voi olla
~/sharelatex_data tai ~/overleaf_data riippuen siitä, milloin instanssisi on otettu käyttöön.Projektitiedostoille ja projektien täydelle historiatiedolle tuemme myös S3-yhteensopivia tallennustaustajärjestelmiä.
Yhtenäisen varmuuskopion tekeminen
Yhtenäistä varmuuskopiota tehtäessä on otettava mukaan kolme tietovarastoa:- MongoDB
- Redis
- Overleafin tiedostojärjestelmän tiedot
3.5.0 alkaen sammutusprosessi automatisoi sivuston sulkemisen ja käyttäjien yhteyksien katkaisemisen.
Sammuttaaksesi instanssin aja bin/docker-compose stop sharelatex, jos käytät Toolkit-käyttöönottoa, tai docker compose stop sharelatex, jos käytät Docker Composea.
Kun sharelatex-kontti on pysäytetty, voit aloittaa varmuuskopioinnin.
Kun varmuuskopiointi on valmistunut onnistuneesti, sinun on käynnistettävä sharelatex-kontti. Aja tätä varten bin/docker-compose start sharelatex, jos käytät Toolkit-käyttöönottoa, tai docker compose start sharelatex, jos käytät Docker Composea.
- Varmuuskopiot tulisi säilyttää eri palvelimella kuin se, jolla Overleaf-instanssisi toimii, mieluiten kokonaan eri sijainnissa.
- Tietokantojen replikointi useisiin MongoDB-instansseihin voi tarjota jonkin verran redundanssia, mutta se ei suojaa tietojen vioittumiselta.
- Varmuuskopioiden testaaminen on paras tapa varmistaa, että ne ovat täydellisiä ja toimivia.
MongoDB
MongoDB:n mukana tulee komentorivityökalu mongodump, jolla voi luoda varmuuskopion tietokantaan tallennetuista käyttäjä- ja projektitiedoista.Overleafin tiedostojärjestelmän tiedot
Toolkit-käyttöönotoissa polku, johon ei-muokattavat tiedostot tallennetaan, määritetään tiedostossaconfig/overleaf.rc ympäristömuuttujalla OVERLEAF_DATA_PATH, mutta instanssin luontiajankohdasta riippuen se voi olla data/sharelatex.
Täydellisen varmuuskopion varmistamiseksi tämä hakemisto on kopioitava rekursiivisesti esimerkiksi rsync-työkalulla.
Redis
Redis tallentaa käyttäjäistunnot ja odottavat asiakirjapäivitykset ennen kuin ne siirretään MongoDB:hen. Append Only File (AOF) -pysyvyys on suositeltu määritys Redisin pysyvyydelle. Toolkitin käyttäjillä AOF-pysyvyys on oletuksena käytössä uusissa asennuksissa. Nykyiset käyttäjät löytävät lisätietoja AOF:n käyttöönotosta täältä. Jos päätät jatkaa RDB-tilannevedosten käyttöä AOF-pysyvyyden rinnalla, voit kopioida RDB-tiedoston turvalliseen paikkaan varmuuskopioksi.Tietojen siirtäminen palvelimien välillä
Parhaassa tapauksessa uudessa instanssissa ei vielä ole arvokkaita tietoja. Meillä ei ole prosessia instanssien tietojen yhdistämiseen. Olettaen, että uudessa instanssissa ei vielä ole tietoja, tässä on joitakin vaiheita, joita voit noudattaa. Yleisellä tasolla luommemongo-, redis- ja overleaf-volyymeista tar-paketin, kopioimme sen uudelle palvelimelle ja purkamme sen siellä.
Toolkit
Docker Compose
mongo-, redis- ja overleaf-volyymien polkuja.
Kun tar ajetaan root-käyttäjänä (tai sudolla), se säilyttää tiedostojen omistajan/ryhmän ja oikeudet, mikä on ratkaisevan tärkeää varmuuskopiota palautettaessa.
Kansiot yksityiskohtaisesti
Seuraavilla kansioilla on lisämerkintöjä:
- (b) sisällytä varmuuskopioihin, mieluiten instanssin ollessa pysäytettynä yhtenäisyyden varmistamiseksi
- (d) voidaan poistaa
- (e) tilapäiset tiedostot, voidaan poistaa instanssin ollessa pysäytettynä
~/mongo_data(b)- MongoDB:n datahakemisto
~/redis_data(b)- Redis-tietokannan datahakemisto
~/overleaf_data- bin
- synctex (d)
- ei käytössä uusimmassa julkaisussa; aiemmin käytettiin mukautettua synctex-binääriä (synctexiä käytetään lähdekoodin vastaavuuksiin .tex-tiedostojen ja pdf:n välillä)
- synctex (d)
- data
- cache (e)
- käännösten binääritiedostovälimuisti
- compiles (e)
- LaTeX-käännös tapahtuu täällä
- db.sqlite (d)
- ei käytössä uusimmassa julkaisussa; tallensi aiemmin clsi-välimuistin tietoja (siirretty joko yksinkertaisiin muistinsisäisiin rakenteisiin tai levy skannataan)
- db.sqlite-wal (d)
- ei käytössä uusimmassa julkaisussa, katso db.sqlite
- output (e)
- LaTeX-käännösten tulosteiden tallennus asiakkaalle tarjoamista varten
- template_files (b)
- mallijärjestelmän kuvaesikatselut (vain Server Pro)
- user_files (b)
- projektien binääritiedostot
- history (b)
- projektien täydet historiatiedostot
- cache (e)
- tmp
- dumpFolder (e)
- zip-tiedostojen käsittelyn väliaikaiset tiedostot
- uploads (e)
- tiedostolatausten puskurointi (binääritiedoston / uuden projektin zip-latauksessa)
- projectHistories (e)
- väliaikaiset tiedostot projektien täyden historian siirtoja varten
- dumpFolder (e)
- bin

