> 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/el/diamorfosi/overleaf-toolkit/redis.md).

# Redis

### Ενεργοποίηση ελέγχου ταυτότητας με κωδικό πρόσβασης

Αν χρησιμοποιείτε μια εξωτερική υπηρεσία Redis και χρειάζεται να δώσετε έναν κωδικό πρόσβασης, μπορείτε να το κάνετε ορίζοντας τις `OVERLEAF_REDIS_PASS` και `REDIS_PASSWORD` μεταβλητές περιβάλλοντος στο **config/variables.env** αρχείο και εκτελώντας την `bin/up -d` εντολή για να αναδημιουργήσετε το **sharelatex** κοντέινερ.

Αν εκτελείτε μια τοπική παρουσία του Redis, θα χρειαστεί να ρυθμίσετε την **redis** υπηρεσία ώστε να ξεκινά με έλεγχο ταυτότητας με κωδικό πρόσβασης. Αφού ορίσετε τις παραπάνω μεταβλητές περιβάλλοντος, θα χρειαστεί επίσης να ολοκληρώσετε τα ακόλουθα επιπλέον βήματα:

Δημιουργήστε ένα **docker-compose.override.yml** αρχείο στον **config/** κατάλογο με το ακόλουθο περιεχόμενο:

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

```yaml
services:
    redis:
        εντολή: "redis-server --requirepass <YOUR-PASSWORD>"
```

{% endcode %}

{% hint style="warning" %}
Αν έχετε ενεργοποιημένη τη διατήρηση AOF, θα χρειαστεί να προσθέσετε `--appendonly yes` στο `εντολή`.
{% endhint %}

Εκτελέστε `bin/up -d` για να αναδημιουργήσετε τα κοντέινερ.

### Ενεργοποίηση διατήρησης Append-Only File

(Αρχικό: <https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/redis#enabling-append-only-file-persistence>)

Η διατήρηση Redis AOF (Append-Only File) παρέχει έναν αξιόπιστο τρόπο για να διασφαλίσετε τη μονιμότητα των δεδομένων καταγράφοντας κάθε λειτουργία εγγραφής που λαμβάνει ο διακομιστής. Σε αντίθεση με τα στιγμιότυπα RDB, που λαμβάνουν αντίγραφα του συνόλου δεδομένων σας σε μια συγκεκριμένη χρονική στιγμή, το AOF διατηρεί πλήρη καταγραφή όλων των αλλαγών που γίνονται στα δεδομένα σας.

{% hint style="info" %}
Η απενεργοποίηση του RDB είναι προαιρετική. Γενικά συνιστάται να χρησιμοποιούνται και οι δύο μέθοδοι διατήρησης μαζί. Πριν κάνετε οποιεσδήποτε αλλαγές σε παραγωγή, εξετάστε τα πλεονεκτήματα και τα μειονεκτήματα της ταυτόχρονης χρήσης AOF και RDB.
{% endhint %}

Μπορείτε να διαβάσετε περισσότερα σχετικά με την ενεργοποίηση της διατήρησης AOF στο Redis εδώ: <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. Προγραμματίστε ένα παράθυρο συντήρησης για την αναβάθμιση.
2. Σταματήστε την παρουσία χρησιμοποιώντας `bin/stop` και δημιουργήστε ένα αντίγραφο ασφαλείας των **config/** και **data/** φακέλων.
3. Εκτελέστε `bin/up` για να ξεκινήσετε την παρουσία
4. Εκτελέστε την εντολή `docker exec -it redis sh`
5. Εκτελέστε την εντολή `redis-cli` για να ανοίξετε τη διεπαφή γραμμής εντολών του Redis
6. Στο redis-cli, εκτελέστε την εντολή `config set appendonly yes`
7. Τώρα θα χρειαστεί να περιμένετε να ολοκληρωθεί η επανεγγραφή του AOF για να αποθηκευτούν μόνιμα τα δεδομένα. Μπορείτε να το κάνετε πληκτρολογώντας `INFO persistence` στο redis-cli και περιμένοντας να `aof_rewrite_in_progress` και `aof_rewrite_scheduled` να είναι `0`, και επαληθεύοντας ότι `aof_last_bgrewrite_status` είναι `ok`.
8. Βγείτε από το redis-cli πληκτρολογώντας `exit` και πατώντας το πλήκτρο επιστροφής
9. Βγείτε από το κοντέινερ του Redis πληκτρολογώντας `exit` και πατώντας το πλήκτρο επιστροφής
10. Εκτελέστε την εντολή `ls ./data/redis` και επιβεβαιώστε ότι μπορείτε να δείτε το **appendonly.aof** αρχείο
11. Επεξεργαστείτε το **config/overleaf.rc** αρχείο και αλλάξτε τη `REDIS_AOF_PERSISTENCE` μεταβλητή περιβάλλοντος από `false` σε `true`
12. Εκτελέστε `bin/up -d` και βεβαιωθείτε ότι η εφαρμογή λειτουργεί (ο επεξεργαστής έργου και το παράθυρο ιστορικού λειτουργούν).


---

# 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/el/diamorfosi/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.
