文章目录
- 一、前提准备
 - 1. redis配置文件
 - 2. 下载`redis`镜像
 - 3. 文件夹结构
 
- 二、docker-compose
 - 三、主从配置
 - 1.主节点配置文件
 
环境
- docker desktop for windows 4.23.0
 - redis 7.2
 
一、前提准备
1. redis配置文件
因为Redis 7.2 docker镜像里面没有配置文件,所以需要去redis官网下载一个复制里面的redis.conf
 博主这里用的是7.2.3版本的redis.conf,这个文件就在解压后第一层文件夹里。
2. 下载redis镜像
 
docker pull redis:7.2
 
3. 文件夹结构
如下建立cluster文件夹,并复制出三份conf文件到如图位置。
 
二、docker-compose
docker-compose文件具体内容如下。
version: '3.8'
networks:
  redis-network:
    driver: bridge
    ipam:
      driver: default
      config:
        - subnet: 172.30.1.0/24
services:
  redis-master:
    container_name: redis-master
    image: redis:7.2
    volumes:
      - ./master/redis.conf:/usr/local/etc/redis/redis.conf
#      - ./master/data:/data
    ports:
      - "7001:6379"
    command: ["redis-server", "/usr/local/etc/redis/redis.conf"]
    networks:
      redis-network:
        ipv4_address: 172.30.1.2
  redis-replica1:
    container_name: redis-replica1
    image: redis:7.2
    volumes:
      - ./replica1/redis.conf:/usr/local/etc/redis/redis.conf
#      - ./replica1/data:/data
    ports:
      - "7002:6379"
    command: ["redis-server", "/usr/local/etc/redis/redis.conf"]
    depends_on:
      - redis-master
    networks:
      redis-network:
        ipv4_address: 172.30.1.3
  redis-replica2:
    container_name: redis-replica2
    image: redis:7.2
    volumes:
      - ./replica2/redis.conf:/usr/local/etc/redis/redis.conf
#      - ./replica2/data:/data
    ports:
      - "7003:6379"
    command: ["redis-server", "/usr/local/etc/redis/redis.conf"]
    depends_on:
      - redis-master
    networks:
      redis-network:
        ipv4_address: 172.30.1.4
 
需要注意以下几点
- 这里自定义了
bridge子网并限定了范围,如果该范围已经被使用,请更换。 - 这里没有对
data进行-v挂载,如果要挂载,请注意宿主机对应文件夹权限问题。 
三、主从配置
1.主节点配置文件
主节点对应的配置文件是master/redis.conf,需要做以下修改
-  
bind
将bind 127.0.0.1 -::1修改为bind 0.0.0.0,接收来自任意ip的请求。 -  
protected-mode
将protected-mode设置为no,关闭保护模式,运行其他节点连接。 -  
masterauth
将masterauth设置为1009,这是认证密码。 -  
requirepass
将requirepass设置为1009,这是认证密码。 

















![[每周一更]-(第51期):Go的调度器GMP](https://img-blog.csdnimg.cn/direct/7bb6910bc70746b384bc78aceab5fe77.png#pic_center)
