【问题标题】:How do I make redisearch docker image persist data?如何使 redisearch docker image 持久化数据?
【发布时间】:2019-09-15 06:21:08
【问题描述】:

我在本地使用 redislabs redisearch docker 映像来处理 redisearch,但我希望在重新启动 redisearch 容器后创建的索引和文档仍然存在。我尝试了卷映射 - 它没有用。你做了什么让它持续存在?

【问题讨论】:

  • 请详细说明您如何使用映射运行容器 - 它应该可以正常工作。
  • @Itamar Haber 我正在拉取图像并运行它: docker run -p 6379:6379 -v /home/user/Documents/data:/data redislabs/redisearch

标签: docker redisearch


【解决方案1】:

你没有设置持久化配置指令,所以没有数据被持久化。

您可以提供配置文件,也可以将它们作为命令行参数提供。例如,以下默认情况下激活 RDB 快照:

$ docker run -p 6379:6379 -v /tmp/data:/data redislabs/redisearch --loadmodule /usr/lib/redis/modules/redisearch.so --save 3600 1 300 100 60 10000

无论如何,您都可以通过调用BGSAVE 来验证挂载是否成功并手动保存RDB。您应该能够在您的主机上看到“dump.rdb”。

【讨论】:

  • 感谢@Itamar Haber,做到了。但是,这是做什么的:--save 360​​0 1 300 100 60 10000?
  • 这会使用默认值配置自动快照 - 您可以阅读 redis.conf 文件中save 指令的说明。
【解决方案2】:

除了卷映射,您必须从启用持久存储开始 (--appendonly yes)。查看https://hub.docker.com/_/redis

docker run -d --net=host -v redisearch:/data redislabs/redisearch:latest --loadmodule /usr/lib/redis/modules/redisearch.so --appendonly yes

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-13
    • 1970-01-01
    • 2016-12-30
    相关资源
    最近更新 更多