将 dockerized redis 迁移到另一台服务器

Migrating dockerized redis to another server

我对 docker 和 redis 都是新手。我已经将 serverA 配置为 运行 redis inside docker。 redis 数据库已经预先植入了一千 key/value 对。我可以确认数据已保存在此容器中。然后我从这个容器创建了一个新的 docker 图像,并将其上传到我的 docker 存储库。

在服务器 B 上,我拉取了 redis 映像 "redis-preseeded" 并启动了它。当我连接并发出 'info keyspace' 命令时使用 redis-cli 工具,键空间为空,表明 none 的数据已通过。我做错了什么?

您使用的是 Redis 的官方镜像吗?

它有一个声明的卷:

..
VOLUME /data
WORKDIR /data
..

documentation 中描述了卷。简而言之,作者所做的是将 Redis 配置为将数据存储在将由 docker 引擎维护的外部磁盘卷上。这不仅效率更高,还允许用户将数据与使用它的容器分开。

劳动点图像的快照将不包含任何数据(如果您考虑一下,这是一件好事)。

一旦您理解了这些概念,那么如何在服务器之间移动数据就会变得更加明显: