Docker配置Redis主从配置

Docker配置redis主从配置

1.拉取docker镜像
docker ps -a
在这里插入图片描述
由此可见 只有一个redis 主配置

2.配置两个从配置
docker run -name slave -p 6380:6379 -d redis
docker run --name slave1 -p 6381:6379 -d redis

3.再次查看docker镜像
docker ps -a

在这里插入图片描述
4.测试容器

在这里插入图片描述
5.开始集群配置

5.1先查看主配置的ip地址
docker inspect 872a7feaa6fd

在这里插入图片描述
IP地址:
“IPAddress”: “172.17.0.2”

5.2进入容器内部 查看redis角色是主还是从

在这里插入图片描述
目前还是mester状态

5.3、使用redis-cli命令修改redis-6380、redis-6381的主机为172.17.0.1:6379

在这里插入图片描述
在这里插入图片描述

5.4、查看redis-6379是否已经拥有2个从机

在这里插入图片描述
由此可见 connected_slaves:2
是的

5.5、配置Sentinel哨兵

进入3台redis容器内部进行配置,在容器根目录里面创建sentinel.conf文件

文件内容为:sentinel monitor mymaster 172.17.0.2 6379 1

在这里插入图片描述

出现bash: vim: command not found

解决:1、apt-get update 2、apt-get install vim

最后,启动Redis哨兵:
在这里插入图片描述

6.测试

6.1打开多个窗口

在这里插入图片描述
6.2关闭主配置
docker stop 872a7feaa6fd

查看其他两个是否选举成功

在这里插入图片描述

在这里插入图片描述

成功!!!!

### DockerRedis 主从配置教程 在容器化环境中,使用 Docker 部署 Redis 主从复制是一种常见的实践方式。以下是基于 Docker Compose 的 Redis 主从复制环境的具体实现方法。 #### 1. 准备工作 确保本地已安装 DockerDocker Compose 工具[^1]。如果尚未安装这些工具,请参考官方文档完成安装过程[^2]。 #### 2. 编写 `docker-compose.yml` 文件 创建一个新的目录来保存项目文件,并在此目录下编写 `docker-compose.yml` 文件: ```yaml version: '3.8' services: redis-master: image: redis:alpine container_name: redis-master ports: - "6379:6379" volumes: - ./redis.conf:/usr/local/etc/redis/redis.conf command: ["redis-server", "/usr/local/etc/redis/redis.conf"] redis-slave: image: redis:alpine container_name: redis-slave depends_on: - redis-master environment: REDIS_MASTER_HOST: redis-master REDIS_MASTER_PORT: 6379 entrypoint: | bash -c " echo 'slaveof $$REDIS_MASTER_HOST $$REDIS_MASTER_PORT' >> /data/redis.conf && exec redis-server /data/redis.conf " ``` 此配置定义了一个主节点 (`redis-master`) 和一个从节点 (`redis-slave`)。通过设置 `entrypoint` 参数,在启动时自动将从节点连接到主节点[^1]。 #### 3. 创建 Redis 配置文件 在同一目录下创建名为 `redis.conf` 的文件,用于自定义 Redis 行为。以下是一个简单的示例配置: ```conf appendonly yes protected-mode no bind 0.0.0.0 port 6379 ``` 该配置启用了 AOF 持久化功能并允许外部访问 Redis 实例[^1]。 #### 4. 启动服务 运行以下命令以启动 Redis 主从复制环境: ```bash docker-compose up -d ``` 这会以后台模式启动所有服务,并初始化主从关系。 #### 5. 测试主从同步 进入主节点容器执行写操作: ```bash docker exec -it redis-master redis-cli > SET key value OK ``` 随后验证数据是否成功同步至从节点: ```bash docker exec -it redis-slave redis-cli > GET key "value" ``` 如果返回值一致,则说明主从同步正常工作[^1]。 #### 6. 清理资源 当不再需要该项目时,可运行以下命令停止并移除所有相关容器和服务: ```bash docker-compose down ``` 这一指令能够彻底清理由当前 compose 文件所定义的所有组件及其依赖项[^3]。 --- ### 总结 以上展示了如何利用 Docker Compose 构建 Redis 主从复制架构的过程。这种方法不仅简化了部署流程,还提高了系统的可靠性和扩展能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值