| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- services:
- # 主节点
- redis-master:
- image: registry.cn-chengdu.aliyuncs.com/reghao/redis:6.0.16-bullseye
- container_name: redis-master
- restart: always
- command: redis-server /etc/redis/redis.conf
- volumes:
- - /etc/localtime:/etc/localtime:ro
- - ./redis/redis.conf:/etc/redis/redis.conf
- healthcheck:
- test: [ "CMD", "redis-cli", "ping" ]
- interval: 5s # 每 5 秒检查一次
- timeout: 3s # 超时时间
- retries: 5 # 重试次数
- start_period: 10s # 容器启动后 10 秒内不计入失败
- # 从节点 1
- redis-slave-1:
- image: registry.cn-chengdu.aliyuncs.com/reghao/redis:6.0.16-bullseye
- container_name: redis-slave-1
- restart: always
- volumes:
- - /etc/localtime:/etc/localtime:ro
- - ./redis/redis.conf:/etc/redis/redis.conf
- command: redis-server /etc/redis/redis.conf --replicaof redis-master 6379
- healthcheck:
- test: [ "CMD", "redis-cli", "ping" ]
- interval: 5s # 每 5 秒检查一次
- timeout: 3s # 超时时间
- retries: 5 # 重试次数
- start_period: 10s # 容器启动后 10 秒内不计入失败
- depends_on:
- - redis-master
- # 从节点 2
- redis-slave-2:
- image: registry.cn-chengdu.aliyuncs.com/reghao/redis:6.0.16-bullseye
- container_name: redis-slave-2
- restart: always
- volumes:
- - /etc/localtime:/etc/localtime:ro
- - ./redis/redis.conf:/etc/redis/redis.conf
- command: redis-server /etc/redis/redis.conf --replicaof redis-master 6379
- healthcheck:
- test: [ "CMD", "redis-cli", "ping" ]
- interval: 5s # 每 5 秒检查一次
- timeout: 3s # 超时时间
- retries: 5 # 重试次数
- start_period: 10s # 容器启动后 10 秒内不计入失败
- depends_on:
- - redis-master
- # 哨兵 1
- sentinel-1:
- image: registry.cn-chengdu.aliyuncs.com/reghao/redis:6.0.16-bullseye
- container_name: sentinel-1
- restart: always
- ports:
- - "26379:26379"
- command: redis-sentinel /etc/redis/sentinel.conf
- volumes:
- - /etc/localtime:/etc/localtime:ro
- - ./sentinel/sentinel1.conf:/etc/redis/sentinel.conf
- healthcheck:
- # 哨兵端口不同,需要指定端口进行 ping
- test: [ "CMD", "redis-cli", "-p", "26379", "ping" ]
- interval: 5s
- timeout: 3s
- retries: 5
- # 哨兵 2
- sentinel-2:
- image: registry.cn-chengdu.aliyuncs.com/reghao/redis:6.0.16-bullseye
- container_name: sentinel-2
- restart: always
- ports:
- - "26380:26379"
- command: redis-sentinel /etc/redis/sentinel.conf
- volumes:
- - /etc/localtime:/etc/localtime:ro
- - ./sentinel/sentinel2.conf:/etc/redis/sentinel.conf
- healthcheck:
- # 哨兵端口不同,需要指定端口进行 ping
- test: [ "CMD", "redis-cli", "-p", "26379", "ping" ]
- interval: 5s
- timeout: 3s
- retries: 5
- # 哨兵 3
- sentinel-3:
- image: registry.cn-chengdu.aliyuncs.com/reghao/redis:6.0.16-bullseye
- container_name: sentinel-3
- restart: always
- ports:
- - "26381:26379"
- command: redis-sentinel /etc/redis/sentinel.conf
- volumes:
- - /etc/localtime:/etc/localtime:ro
- - ./sentinel/sentinel3.conf:/etc/redis/sentinel.conf
- healthcheck:
- # 哨兵端口不同,需要指定端口进行 ping
- test: [ "CMD", "redis-cli", "-p", "26379", "ping" ]
- interval: 5s
- timeout: 3s
- retries: 5
|