模版文件
yamlport 6379
bind 0.0.0.0
protected-mode no
daemonize no
appendonly yes
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 15000
cluster-announce-ip 172.19.0.1${NO}
cluster-announce-port 6379
cluster-announce-bus-port 16379
生成脚本
yamlfor no in `seq 1 6`; do \
mkdir -p redis-${no}/conf \
&& NO=${no} envsubst < redis-cluster.tmpl > redis-${no}/conf/redis.conf \
&& mkdir -p redis-${no}/data;\
done
docker-compose.yaml文件
yaml# 描述 Compose 文件的版本信息
version: "3.8"
# 定义服务,可以多个
services:
redis-cluster:
image: redis:latest
networks:
redis:
ipv4_address: 172.19.0.2
command: redis-cli --cluster create 172.19.0.11:6379 172.19.0.12:6379 172.19.0.13:6379 172.19.0.14:6379 172.19.0.15:6379 172.19.0.16:6379 --cluster-replicas 1 --cluster-yes
depends_on:
- redis-1
- redis-2
- redis-3
- redis-4
- redis-5
- redis-6