> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/on-premises/pt/configuracao/overleaf-toolkit/redis.md).

# Redis

### Ativando autenticação por senha

Se você estiver usando um serviço Redis externo e precisar fornecer uma senha, você pode fazer isso definindo as `OVERLEAF_REDIS_PASS` e `REDIS_PASSWORD` variáveis de ambiente no **config/variables.env** arquivo e executando o `bin/up -d` comando para recriar os **sharelatex** contentor.

Se você estiver executando uma instância local do Redis, você precisará configurar o **redis** serviço para iniciar com autenticação por senha. Depois de definir as variáveis de ambiente acima, você também precisará concluir estas etapas adicionais:

Crie um **docker-compose.override.yml** arquivo no **config/** diretório com o seguinte conteúdo:

{% code title="config/docker-compose.override.yml" %}

```yaml
services:
    redis:
        comando: "redis-server --requirepass <YOUR-PASSWORD>"
```

{% endcode %}

{% hint style="warning" %}
Se você tiver a persistência AOF ativada, você precisará adicionar `--appendonly yes` com o `comando`.
{% endhint %}

Execute `bin/up -d` para recriar os contêineres.

### Ativando a persistência em arquivo apenas de anexação

(Original: <https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/redis#enabling-append-only-file-persistence>)

A persistência AOF (Append-Only File) do Redis fornece uma maneira robusta de garantir a durabilidade dos dados, registrando cada operação de gravação recebida pelo servidor. Ao contrário dos snapshots RDB, que fazem cópias pontuais do seu conjunto de dados, o AOF mantém um registro completo de todas as alterações feitas nos seus dados.

{% hint style="info" %}
Desativar o RDB é opcional. Em geral, recomenda-se usar ambos os métodos de persistência juntos. Antes de fazer qualquer alteração em produção, reveja as vantagens e desvantagens de executar AOF e RDB juntos.
{% endhint %}

Você pode ler mais sobre como ativar a persistência AOF no Redis aqui: <https://redis.io/docs/latest/operate/oss_and_stack/management/persistence/#how-i-can-switch-to-aof-if-im-currently-using-dumprdb-snapshotsarrow-up-right>

1. Agende uma janela de manutenção para a atualização.
2. Pare a instância usando `bin/stop` e faça um backup das **config/** e **data/** pastas.
3. Execute `bin/up` para iniciar a instância
4. Execute o comando `docker exec -it redis sh`
5. Execute o comando `redis-cli` para abrir a interface de linha de comando do Redis
6. No redis-cli, execute o comando `config set appendonly yes`
7. Agora você precisará esperar a reescrita do AOF terminar de persistir os dados. Você pode fazer isso digitando `INFO persistence` no redis-cli e aguardando `aof_rewrite_in_progress` e `aof_rewrite_scheduled` estar `0`, e validando que `aof_last_bgrewrite_status` é `ok`.
8. Saia do redis-cli digitando `exit` e pressionando a tecla Enter
9. Saia do contêiner redis digitando `exit` e pressionando a tecla Enter
10. Execute o comando `ls ./data/redis` e confirme que você pode ver o **appendonly.aof** ficheiro
11. Edite o **config/overleaf.rc** arquivo e altere a `REDIS_AOF_PERSISTENCE` variável de ambiente de `false` para `true`
12. Execute `bin/up -d` e certifique-se de que a aplicação funciona (o editor do projeto e o painel de histórico estão funcionais).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/on-premises/pt/configuracao/overleaf-toolkit/redis.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
