Redis
启用密码认证
如果您使用外部 Redis 服务并需要提供密码,可以通过在以下位置设置 OVERLEAF_REDIS_PASS 和 REDIS_PASSWORD 环境变量在 config/variables.env 文件并运行 bin/up -d 命令以重新创建 sharelatex 容器。
如果您正在运行本地 Redis 实例,则需要配置 redis 服务以密码认证方式启动。设置上述环境变量后,您还需要完成以下额外步骤:
创建一个 docker-compose.override.yml 文件在 config/ 目录中,内容如下:
services:
redis:
命令:"redis-server --requirepass <YOUR-PASSWORD>"如果启用了 AOF 持久化,您需要添加 --appendonly yes 到 命令.
运行 bin/up -d 以重新创建容器。
启用追加文件(AOF)持久化
(原文:https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/redis#enabling-append-only-file-persistence)
Redis AOF(Append-Only File,追加文件)持久化通过记录服务器接收到的每个写操作,提供了一种确保数据持久性的稳健方式。与对数据集进行时点快照的 RDB 不同,AOF 保留了对数据所做的所有更改的完整记录。
禁用 RDB 是可选的。通常建议同时使用这两种持久化方法。在生产环境中进行任何更改之前,请先评估同时运行 AOF 和 RDB 的优缺点。
您可以在此处了解有关在 Redis 中启用 AOF 持久化的更多信息: 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
为升级安排维护窗口。
使用以下命令停止实例
bin/stop并备份 config/ 和 data/ 文件夹。运行
bin/up以启动实例运行命令
docker exec -it redis sh运行命令
redis-cli以打开 Redis 命令行界面在 redis-cli 中,运行命令
config set appendonly yes现在您需要等待 AOF 重写完成数据持久化。您可以通过输入以下内容来实现:
INFO persistence到 redis-cli 并等待aof_rewrite_in_progress和aof_rewrite_scheduled为0,并验证aof_last_bgrewrite_status为ok.在 redis-cli 中输入以下命令退出:
exit并按回车键通过输入以下命令退出 redis 容器:
exit并按回车键运行命令
ls ./data/redis并确认您可以看到 appendonly.aof 文件编辑 config/overleaf.rc 文件并更改
REDIS_AOF_PERSISTENCE环境变量从false直接升级到true运行
bin/up -d并确保应用程序可正常工作(项目编辑器和历史面板可用)。
最后更新于