【redis】基于docker搭建redis主从(详细步骤)

阅读须知:

本文主要内容为 Docker 搭建 Redis 主从,想要了解如何在 Docker 安装 Redis 的同学请阅读前文【Redis】基于Docker安装Redis(详细步骤)
注:本文中提到的前文均指上述文章。本文是在前文的基础上进行的 Redis 主从复制,建议同学们按照前文步骤从头开始一步步操作,可以避免一些不必要的报错。

操作步骤

1. 创建 slave 对应目录

  1. /usr/local/software/redis 目录下,输入 mkdir -p 6380/conf 6380/data 6380/log,新建多级目录(大家可根据自己的情况选择自己对应的路径创建)。
  2. 输入tree,查看多级目录结构。

演示图例如下:

新建多级目录
查看目录结构

2. 设置日志读写权限

  1. 6380/log 目录下,输入touch redis.log 新建日志文件 “redis.log”。
  2. 输入chmod 777 redis.log 设置日志文件读写权限。

演示图例如下:

设置读写权限

3. 上传/拷贝配置文件

  1. 上传文件:这一步可以选择上传或拷贝配置文件,跟着前文一步步搭建过来的同学建议拷贝之前的配置文件,如果之前没有上传过配置文件的同学请前往文章顶部下载对应资源。
  2. 拷贝文件:根据前文步骤,在 usr/local/software/redis/6379/conf 目录下已有配置文件,只需将其拷贝到 6380/conf 目录即可。
    a. 输入 cd usr/local/software/redis/6379/conf ,进入指定目录。
    b. 输入 cp redis.conf ../../6380/conf,拷贝 redis.conf 配置文件。
  3. 检查是否完成拷贝。

演示图例如下:

复制配置文件
检查是否完成拷贝

4. 查询 master 的 ip

  1. 输入 docker inspect redis_6379 |grep IPA ,查询 master 的 ip 地址。
    细心的同学可以发现,这里的 ip 地址就是我们依照前文设置的 redis 的 ip地址。

演示图例如下:

查询ip

5. 修改配置文件

  1. 输入 vim redis.conf ,进入编辑器界面。
  2. 按下 : ,输入 set nu ,显示行号。
  3. 修改479行的内容,这里的 ip 是上一步我们查询出来的 ip,每个人根据自己的 ip 来修改,如下图所示。
  4. 480行,添加 slave-read-only no,如下图所示。
  5. 修改1255行的内容,如下图所示。

演示图例如下:

修改配置信息
修改配置二

6. 创建容器

输入对应指令,创建运行 redis slave 的容器。

docker run -it \
--name redis_6380 \
--privileged \
-p 6380:6379 \
--network my_docker_net \
--ip 172.18.12.11 \
-v /usr/local/software/redis/6380/conf/redis.conf:/usr/local/etc/redis/redis.conf \
-v /usr/local/software/redis/6380/data/:/data \
-v /usr/local/software/redis/6380/log/redis.log:/var/log/redis.log \
-d redis \
/usr/local/etc/redis/redis.conf

演示图例如下:

创建容器

7. 查看日志文件

  1. 进入 6380/log 目录下,输入 cat redis.log,查看日志信息。

演示图例如下:

查看日志

8. 进入容器,运行Redis客户端

  1. 输入 docker exec -it redis_6380 bash,进入容器。
  2. 输入 redic-cli,运行 redis 客户端。
  3. 输入 info replication,查看对应信息。

演示图例如下:查看slave信息

以同样的方法进入 master 容器:
1. 输入 docker exec -it redis_6379 bash,进入容器。
2. 输入 redis-cli,运行 redis 客户端。
3. 输入 info replication,查看对应信息。

演示图例如下:

查看master信息

至此,基于 Docker 搭建 Redis 的主从复制已成功完成!小伙伴们可根据自身需求,按照步骤继续建立更多数量的 slave 。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
要使用Docker搭建Redis主从复制,你需要按照以下步骤进行操作: 1. 首先,确保你已经安装了Docker。如果没有,请先安装Docker。 2. 创建一个用于主节点的Redis容器。在终端中运行以下命令: ``` docker run -d --name redis-master -p 6379:6379 redis ``` 这将在后台运行一个名为redis-master的Redis容器,并将其映射到本地的6379端口。 3. 创建两个用于从节点的Redis容器。在终端中运行以下命令: ``` docker run -d --name redis-slave1 redis docker run -d --name redis-slave2 redis ``` 这将在后台分别运行两个名为redis-slave1和redis-slave2的Redis容器。 4. 获取主节点的IP地址。运行以下命令以获取主节点容器的IP地址: ``` docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' redis-master ``` 记下这个IP地址,稍后将在配置从节点时使用。 5. 配置从节点连接到主节点。首先,进入第一个从节点容器: ``` docker exec -it redis-slave1 redis-cli ``` 然后,运行以下命令设置从节点连接到主节点: ``` slaveof <主节点IP地址> 6379 ``` 将`<主节点IP地址>`替换为步骤4中获取的主节点IP地址。 6. 重复步骤5,配置第二个从节点连接到主节点: ``` docker exec -it redis-slave2 redis-cli slaveof <主节点IP地址> 6379 ``` 7. 现在,你已经成功配置了Redis主从复制。你可以通过连接到任何一个从节点,并在其中执行命令来验证复制是否正常工作。例如,可以在从节点上运行`INFO replication`命令来检查复制状态。 请注意,这只是一个基本的设置示例。在实际生产环境中,你可能还需要进行更多的配置和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Crazy keyboard

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值