Skip to main content
Os arquivos dos projetos e seu histórico são armazenados pelo serviço history-v1, e os arquivos de templates pelo serviço filestore, ambos dentro de cada pod do Ayakaleaf Pro. Por padrão, eles gravam no volume de dados; com o S3, gravam em buckets. Quais buckets e permissões são necessários está descrito em S3.
Escolha o S3 antes que os usuários criem projetos. Uma instância que já mantém arquivos em seu volume precisa primeiro da migração para o S3.

Configuração

1

Buckets e chaves

Crie os três buckets overleaf-template-files, overleaf-project-blobs e overleaf-chunks e os dois usuários restritos com o seu serviço S3, conforme descrito em Configuração do S3, ou execute o Garage no cluster como mostrado abaixo. Coloque as quatro chaves em um Secret:
2

ConfigMap

30-config.yaml (additions)
3

Adicione o Secret ao pod e reinicie

No Deployment (ou StatefulSet), adicione o Secret ao lado dos outros:

Garage no cluster

Sem um serviço S3, o Garage é um pequeno servidor S3 que é executado no cluster. A configuração de Escalonamento horizontal foi testada com ele. Os comandos abaixo geram as chaves e criam o próprio Secret overleaf-s3, então use-os em vez do comando do Secret da etapa 1.
O MinIO, usado no exemplo do Overleaf, não publica mais imagens de contêiner: minio/minio desapareceu do Docker Hub e do quay.io.
50-garage.yaml
Gere os segredos, inicie o Garage e, em seguida, crie o layout, os buckets e as duas chaves restritas. Os IDs de chave do Garage são GK seguido de 24 caracteres hexadecimais, e os segredos têm 64 caracteres hexadecimais:
As permissões correspondem às políticas em S3. O Garage verifica a região: aqui ela é garage, e OVERLEAF_*_S3_REGION precisa ser a mesma. Com o Garage, defina o endpoint, PATH_STYLE: "true" e a região garage para ambos os serviços no ConfigMap, como em 60-config.yaml de Escalonamento horizontal.

Várias réplicas

Todas as réplicas precisam usar os mesmos buckets e chaves. Faça backup dos buckets com as ferramentas do seu provedor de S3; assim, os discos próprios das réplicas não guardam nenhum dado que precise de backup.

Testado no Kubernetes

No Kubernetes 1.37 com três réplicas e o Garage como acima, todos os testes ponta a ponta destas páginas que criam projetos, enviam arquivos, usam o histórico ou publicam templates foram aprovados e, depois, os buckets overleaf-project-blobs, overleaf-chunks e overleaf-template-files continham os objetos, enquanto o /var/lib/overleaf/data/history próprio das réplicas permaneceu vazio.
Última modificação em 2 de novembro de 2026