> 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/id/konfigurasi/overleaf-toolkit/redis.md).

# Redis

### Mengaktifkan autentikasi kata sandi

Jika Anda menggunakan layanan Redis eksternal dan perlu memberikan kata sandi, Anda dapat melakukannya dengan mengatur `OVERLEAF_REDIS_PASS` dan `REDIS_PASSWORD` variabel lingkungan di dalam **config/variables.env** file dan menjalankan `bin/up -d` perintah untuk membuat ulang **sharelatex** kontainer.

Jika Anda menjalankan instance Redis lokal, Anda perlu mengonfigurasi **redis** layanan agar dimulai dengan autentikasi kata sandi. Setelah mengatur variabel lingkungan di atas, Anda juga perlu menyelesaikan langkah-langkah tambahan berikut:

Buat sebuah **docker-compose.override.yml** file di dalam **config/** direktori dengan isi berikut:

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

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

{% endcode %}

{% hint style="warning" %}
Jika Anda telah mengaktifkan persistensi AOF, Anda perlu menambahkan `--appendonly yes` ke `perintah`.
{% endhint %}

Jalankan `bin/up -d` untuk membuat ulang kontainer.

### Mengaktifkan Persistensi Append-Only File

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

Persistensi Redis AOF (Append-Only File) menyediakan cara yang andal untuk memastikan ketahanan data dengan mencatat setiap operasi penulisan yang diterima oleh server. Tidak seperti snapshot RDB, yang mengambil salinan dataset pada suatu titik waktu, AOF menyimpan catatan lengkap dari semua perubahan yang dibuat pada data Anda.

{% hint style="info" %}
Menonaktifkan RDB bersifat opsional. Secara umum disarankan agar kedua metode persistensi digunakan bersama. Sebelum melakukan perubahan apa pun di produksi, tinjau kelebihan dan kekurangan menjalankan AOF dan RDB bersama-sama.
{% endhint %}

Anda dapat membaca lebih lanjut tentang mengaktifkan persistensi AOF di Redis di sini: <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. Jadwalkan jendela pemeliharaan untuk peningkatan.
2. Hentikan instance menggunakan `bin/stop` dan buat cadangan dari **config/** dan **data/** folder.
3. Jalankan `bin/up` untuk memulai instance
4. Jalankan perintah `docker exec -it redis sh`
5. Jalankan perintah `redis-cli` untuk membuka antarmuka baris perintah Redis
6. Di redis-cli, jalankan perintah `config set appendonly yes`
7. Sekarang Anda perlu menunggu penulisan ulang AOF selesai untuk mempertahankan data. Anda dapat melakukannya dengan mengetik `INFO persistence` ke dalam redis-cli dan menunggu `aof_rewrite_in_progress` dan `aof_rewrite_scheduled` agar `0`, dan memvalidasi bahwa `aof_last_bgrewrite_status` adalah `ok`.
8. Keluar dari redis-cli dengan mengetik `exit` dan menekan tombol Enter
9. Keluar dari kontainer redis dengan mengetik `exit` dan menekan tombol Enter
10. Jalankan perintah `ls ./data/redis` dan pastikan Anda dapat melihat **appendonly.aof** file
11. Edit **config/overleaf.rc** file dan ubah `REDIS_AOF_PERSISTENCE` variabel lingkungan dari `false` ke `true`
12. Jalankan `bin/up -d` dan pastikan aplikasi berfungsi (editor proyek dan panel riwayat berfungsi).


---

# 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/id/konfigurasi/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.
