DROPBOX_ENABLED: "true":
- web (modulet
dropbox): tilknytning, projektets Dropbox-dialog og den webhook, som Dropbox kalder. - third-party-datastore: en selvstændig tjeneste inde i poden, der arbejder sig gennem køen af ændringer, der skal sendes til eller hentes fra Dropbox.
- document-updater: med Dropbox slået til skriver den editorens ændringer til MongoDB i baggrunden, et par minutter efter at alle har forladt et projekt; først derefter sendes de til Dropbox.
Konfiguration
1
ConfigMap
30-config.yaml (additions)
GIT_BRIDGE_ENABLED: "true" og git-bridge-StatefulSet’et fra Git-integration skal være på plads: uden dem skjuler kontoindstillingerne afsnittet om projektsynkronisering.2
Secret
DROPBOX_TOKEN_CIPHER_PASSWORD krypterer brugernes Dropbox-tokens i MongoDB. Hver replika skal bruge den samme værdi, og hvis den ændres senere, skal alle brugere tilknytte Dropbox igen.3
Opret databaseindekserne
Kør indekskommandoerne fra Opret databaseindekserne én gang på replikasættets primære:
4
Anvend og genstart
third-party-datastore.log findes kun, når DROPBOX_ENABLED er "true".5
Åbn webhooken mod internettet
Dropbox skal kunne nå Tilføj derefter webhooken i Dropbox App Console som beskrevet på Toolkit-siden.
${OVERLEAF_SITE_URL}/dropbox/webhook fra internettet. Hvis din ingress eller load balancer kun tillader visse stier eller netværk udefra, skal du tillade denne; det er den eneste sti, Dropbox kalder. Tjek den udefra clusteret:Flere replikaer
Intet ekstra ud over den delteDROPBOX_TOKEN_CIPHER_PASSWORD:
- Webhooken kan ramme en hvilken som helst replika. Den sætter kun ændringen i kø i Redis.
- Hver replika kører third-party-datastore, og hver arbejder på den delte kø. En brugers kø tages med en lås i Redis, så kun én replika ad gangen sender eller henter en given brugers ændringer.
- Hver replikas document-updater skriver inaktive projekter i baggrunden. Hvert projekt tages fra en delt liste i Redis, så det skrives én gang.

