创建目录
先创建一个redis目录
mkdir redis
在redis下创建相关的目录
具体目录结构如下:
创建docker-compose.yml文件
内容如下:
version: '3.7'
services:
master:
image: redis:6.2.4
container_name: redis-master
restart: always
command: redis-server --port 7000 --requirepass 123456 --appendonly yes
ports:
- 7000:7000
volumes:
- ./master/data:/data
networks:
- redis-cluster
slave1:
image: redis:6.2.4
container_name: redis-slave-1
restart: always
# 10.1.1.132(替换成自己的IP)master节点宿主机IP地址,如果安装同一台机子上,不能写127.0.0.1 因为这样访问的是容器本身的地址
command: redis-server --slaveof 10.1.1.132 7000 --port 7001 --requirepass 123456 --masterauth 123456 --appendonly yes
ports:
- 7001:7001
depends_on:
- master
volumes:
- ./slave1/data:/data
networks:
- redis-cluster
slave2:
image: redis:6.2.4
container_name: redis-slave-2
restart: always
# 10.1.1.132(替换成自己的IP) master节点宿主机IP地址,如果安装同一台机子上,不能写127.0.0.1 因为这样访问的是容器本身的地址
command: redis-server --slaveof 10.1.1.132 7000 --port 7002 --requirepass 123456 --masterauth 123456 --appendonly yes
ports:
- 7002:7002
depends_on:
- master
volumes:
- ./slave2/data:/data
networks:
- redis-cluster
networks:
redis-cluster:
创建并启动服务
docker-compose up -d
…
启动成功
docker-compose 相关命令
#启动服务
docker-compose -f docker-compose.yml up -d
# 查看日志
docker-compose logs
# 停止服务
docker-compose stop
# 关闭服务
docker-compose down
客户端链接redis校验集群可用性
master节点连接
存入一个key
slave1节点连接
可以直接获取master节点中设置的key
slave2节点连接
一样可以直接获取master节点中设置的key
集群验证成功