DROPBOX_ENABLED: "true":
- web (
dropbox-modulen): kobling, prosjektets Dropbox-dialogboks og webhooken som Dropbox kaller. - third-party-datastore: en egen tjeneste inne i poden som arbeider seg gjennom køen av endringer som skal sendes til eller hentes fra Dropbox.
- document-updater: når Dropbox er på, skriver den editorens endringer til MongoDB i bakgrunnen, noen minutter etter at alle har forlatt et prosjekt; først da går de til Dropbox.
Konfigurasjon
1
ConfigMap
30-config.yaml (additions)
GIT_BRIDGE_ENABLED: "true" og git-bridge-StatefulSet-en fra Git-integrasjon må være på plass: uten dem skjuler kontoinnstillingene seksjonen for prosjektsynkronisering.2
Secret
DROPBOX_TOKEN_CIPHER_PASSWORD krypterer brukernes Dropbox-tokener i MongoDB. Alle replikaer må bruke samme verdi, og hvis den endres senere, må alle brukere koble til Dropbox på nytt.3
Opprett databaseindeksene
Kjør indekskommandoene fra Opprett databaseindeksene én gang, på primærnoden i replikasettet:
4
Bruk og start på nytt
third-party-datastore.log finnes bare når DROPBOX_ENABLED er "true".5
Åpne webhooken mot internett
Dropbox må kunne nå Legg deretter til webhooken i Dropbox App Console som beskrevet på Toolkit-siden.
${OVERLEAF_SITE_URL}/dropbox/webhook fra internett. Hvis ingressen eller lastbalansereren din bare tillater enkelte stier eller nettverk utenfra, tillater du denne; det er den eneste stien Dropbox kaller. Sjekk den fra utsiden av klyngen:Flere replikaer
Ingenting ekstra utover det delteDROPBOX_TOKEN_CIPHER_PASSWORD:
- Webhooken kan nå hvilken som helst replika. Den legger bare endringen i køen i Redis.
- Hver replika kjører third-party-datastore, og hver av dem arbeider med den delte køen. En brukers kø tas med en lås i Redis, så bare én replika sender eller henter en gitt brukers endringer om gangen.
- Hver replikas document-updater skriver inaktive prosjekter i bakgrunnen. Hvert prosjekt tas fra en delt liste i Redis, så det skrives én gang.

