> For the complete documentation index, see [llms.txt](https://ayakaleaf-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://ayakaleaf-pro.ayaka.space/on-premises/it/configurazione/overleaf-toolkit/redis.md).

# Redis

### Abilitare l'autenticazione con password

Se stai utilizzando un servizio Redis esterno e devi fornire una password, puoi farlo impostando le `OVERLEAF_REDIS_PASS` e `REDIS_PASSWORD` variabili d'ambiente nel **config/variables.env** file ed eseguendo il `bin/up -d` comando per ricreare i **sharelatex** container.

Se stai eseguendo un'istanza locale di Redis, dovrai configurare il **redis** servizio in modo che si avvii con l'autenticazione tramite password. Dopo aver impostato le variabili d'ambiente sopra, dovrai anche completare questi passaggi aggiuntivi:

Crea un **docker-compose.override.yml** file nella **config/** directory con il seguente contenuto:

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

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

{% endcode %}

{% hint style="warning" %}
Se hai abilitato la persistenza AOF, dovrai aggiungere `--appendonly yes` all' `comando`.
{% endhint %}

Esegui `bin/up -d` per ricreare i container.

### Abilitare la persistenza Append-Only File

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

La persistenza Redis AOF (Append-Only File) offre un modo robusto per garantire la durabilità dei dati registrando ogni operazione di scrittura ricevuta dal server. A differenza delle istantanee RDB, che effettuano copie puntuali del tuo dataset, AOF mantiene un registro completo di tutte le modifiche apportate ai tuoi dati.

{% hint style="info" %}
Disabilitare RDB è facoltativo. In genere si consiglia di usare insieme entrambi i metodi di persistenza. Prima di apportare modifiche in produzione, esamina i vantaggi e gli svantaggi dell'uso congiunto di AOF e RDB.
{% endhint %}

Puoi leggere di più su come abilitare la persistenza AOF in Redis qui: <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. Pianifica una finestra di manutenzione per l'aggiornamento.
2. Arresta l'istanza usando `bin/stop` ed esegui un backup delle **config/** e **data/** cartelle.
3. Esegui `bin/up` per avviare l'istanza
4. Esegui il comando `docker exec -it redis sh`
5. Esegui il comando `redis-cli` per aprire l'interfaccia a riga di comando di Redis
6. Nel redis-cli, esegui il comando `config set appendonly yes`
7. Ora dovrai attendere che la riscrittura AOF termini di persistere i dati. Puoi farlo digitando `INFO persistence` nel redis-cli e attendendo che `aof_rewrite_in_progress` e `aof_rewrite_scheduled` sia `0`, e verificando che `aof_last_bgrewrite_status` sia `ok`.
8. Esci dal redis-cli digitando `exit` e premendo il tasto Invio
9. Esci dal container Redis digitando `exit` e premendo il tasto Invio
10. Esegui il comando `ls ./data/redis` e verifica di poter vedere il **appendonly.aof** file
11. Modifica il **config/overleaf.rc** file e modifica la `REDIS_AOF_PERSISTENCE` variabile d'ambiente da `false` a `true`
12. Esegui `bin/up -d` e assicurati che l'applicazione funzioni (l'editor del progetto e il pannello cronologia sono funzionanti).


---

# 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://ayakaleaf-pro.ayaka.space/on-premises/it/configurazione/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.
