parent
f309e0ad3b
commit
e09c62226e
@ -1,11 +1,14 @@
|
|||||||
address: [localhost:16379]
|
address: [localhost:16379]
|
||||||
username:
|
username:
|
||||||
password: openIM123
|
password: openIM123
|
||||||
clusterMode: false
|
# redis Mode, including "standalone","cluster","sentinel"
|
||||||
|
redisMode: "sentinel"
|
||||||
db: 0
|
db: 0
|
||||||
maxRetry: 10
|
maxRetry: 10
|
||||||
poolSize: 100
|
poolSize: 100
|
||||||
|
# Sentinel configuration (only used when redisMode is "sentinel")
|
||||||
sentinelMode:
|
sentinelMode:
|
||||||
enable: false
|
|
||||||
masterName: "redis-master"
|
masterName: "redis-master"
|
||||||
sentinelsAddrs: ["127.0.0.1:26379", "127.0.0.1:26380", "127.0.0.1:26381"]
|
sentinelsAddrs: ["127.0.0.1:26379", "127.0.0.1:26380", "127.0.0.1:26381"]
|
||||||
|
routeByLatency: true
|
||||||
|
routeRandomly: true
|
||||||
|
@ -1,208 +0,0 @@
|
|||||||
networks:
|
|
||||||
openim:
|
|
||||||
driver: bridge
|
|
||||||
|
|
||||||
services:
|
|
||||||
redis:
|
|
||||||
image: "${REDIS_IMAGE}"
|
|
||||||
container_name: redis
|
|
||||||
ports:
|
|
||||||
- "16379:6379"
|
|
||||||
volumes:
|
|
||||||
- "${DATA_DIR}/components/redis/data:/data"
|
|
||||||
- "${DATA_DIR}/components/redis/config/redis.conf:/usr/local/redis/config/redis.conf"
|
|
||||||
environment:
|
|
||||||
TZ: Asia/Shanghai
|
|
||||||
restart: always
|
|
||||||
sysctls:
|
|
||||||
net.core.somaxconn: 1024
|
|
||||||
command: redis-server /usr/local/redis/config/redis.conf --requirepass openIM123 --appendonly yes
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", "redis-cli", "-a", "openIM123", "ping"]
|
|
||||||
interval: 10s
|
|
||||||
timeout: 3s
|
|
||||||
retries: 3
|
|
||||||
start_period: 30s
|
|
||||||
networks:
|
|
||||||
- openim
|
|
||||||
|
|
||||||
redis-slave-1:
|
|
||||||
image: "${REDIS_IMAGE}"
|
|
||||||
container_name: redis-slave-1
|
|
||||||
ports:
|
|
||||||
- "16380:6379"
|
|
||||||
volumes:
|
|
||||||
- "${DATA_DIR}/components/redis/slave1:/data"
|
|
||||||
environment:
|
|
||||||
TZ: Asia/Shanghai
|
|
||||||
REDIS_MASTER_HOST: redis
|
|
||||||
REDIS_MASTER_PORT: 6379
|
|
||||||
REDIS_MASTER_PASSWORD: openIM123
|
|
||||||
REDIS_SLAVE_PASSWORD: openIM123
|
|
||||||
restart: always
|
|
||||||
command: >
|
|
||||||
bash -c '
|
|
||||||
echo "port 6379" > /data/redis-slave.conf &&
|
|
||||||
echo "replicaof $${REDIS_MASTER_HOST} $${REDIS_MASTER_PORT}" >> /data/redis-slave.conf &&
|
|
||||||
echo "masterauth $${REDIS_MASTER_PASSWORD}" >> /data/redis-slave.conf &&
|
|
||||||
echo "requirepass $${REDIS_SLAVE_PASSWORD}" >> /data/redis-slave.conf &&
|
|
||||||
echo "appendonly yes" >> /data/redis-slave.conf &&
|
|
||||||
echo "replica-read-only yes" >> /data/redis-slave.conf &&
|
|
||||||
redis-server /data/redis-slave.conf
|
|
||||||
'
|
|
||||||
depends_on:
|
|
||||||
- redis
|
|
||||||
networks:
|
|
||||||
- openim
|
|
||||||
|
|
||||||
redis-slave-2:
|
|
||||||
image: "${REDIS_IMAGE}"
|
|
||||||
container_name: redis-slave-2
|
|
||||||
ports:
|
|
||||||
- "16381:6379"
|
|
||||||
volumes:
|
|
||||||
- "${DATA_DIR}/components/redis/slave2:/data"
|
|
||||||
environment:
|
|
||||||
TZ: Asia/Shanghai
|
|
||||||
REDIS_MASTER_HOST: redis
|
|
||||||
REDIS_MASTER_PORT: 6379
|
|
||||||
REDIS_MASTER_PASSWORD: openIM123
|
|
||||||
REDIS_SLAVE_PASSWORD: openIM123
|
|
||||||
restart: always
|
|
||||||
command: >
|
|
||||||
bash -c '
|
|
||||||
echo "port 6379" > /data/redis-slave.conf &&
|
|
||||||
echo "replicaof $${REDIS_MASTER_HOST} $${REDIS_MASTER_PORT}" >> /data/redis-slave.conf &&
|
|
||||||
echo "masterauth $${REDIS_MASTER_PASSWORD}" >> /data/redis-slave.conf &&
|
|
||||||
echo "requirepass $${REDIS_SLAVE_PASSWORD}" >> /data/redis-slave.conf &&
|
|
||||||
echo "appendonly yes" >> /data/redis-slave.conf &&
|
|
||||||
echo "replica-read-only yes" >> /data/redis-slave.conf &&
|
|
||||||
redis-server /data/redis-slave.conf
|
|
||||||
'
|
|
||||||
depends_on:
|
|
||||||
- redis
|
|
||||||
networks:
|
|
||||||
- openim
|
|
||||||
|
|
||||||
redis-sentinel-1:
|
|
||||||
image: "${REDIS_IMAGE}"
|
|
||||||
container_name: redis-sentinel-1
|
|
||||||
ports:
|
|
||||||
- "26379:26379"
|
|
||||||
volumes:
|
|
||||||
- "${DATA_DIR}/components/redis/sentinel1:/data"
|
|
||||||
environment:
|
|
||||||
TZ: Asia/Shanghai
|
|
||||||
SENTINEL_PORT: 26379
|
|
||||||
REDIS_MASTER_NAME: redis-master
|
|
||||||
REDIS_MASTER_HOST: 127.0.0.1
|
|
||||||
REDIS_MASTER_PORT: 16379
|
|
||||||
REDIS_MASTER_PASSWORD: openIM123
|
|
||||||
SENTINEL_QUORUM: 2
|
|
||||||
SENTINEL_DOWN_AFTER: 30000
|
|
||||||
SENTINEL_PARALLEL_SYNCS: 1
|
|
||||||
SENTINEL_FAILOVER_TIMEOUT: 180000
|
|
||||||
restart: always
|
|
||||||
command: >
|
|
||||||
bash -c '
|
|
||||||
echo "port $${SENTINEL_PORT}" > /data/sentinel.conf &&
|
|
||||||
echo "sentinel monitor $${REDIS_MASTER_NAME} $${REDIS_MASTER_HOST} $${REDIS_MASTER_PORT} $${SENTINEL_QUORUM}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel auth-pass $${REDIS_MASTER_NAME} $${REDIS_MASTER_PASSWORD}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel down-after-milliseconds $${REDIS_MASTER_NAME} $${SENTINEL_DOWN_AFTER}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel parallel-syncs $${REDIS_MASTER_NAME} $${SENTINEL_PARALLEL_SYNCS}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel failover-timeout $${REDIS_MASTER_NAME} $${SENTINEL_FAILOVER_TIMEOUT}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel resolve-hostnames yes" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel announce-hostnames yes" >> /data/sentinel.conf &&
|
|
||||||
redis-sentinel /data/sentinel.conf
|
|
||||||
'
|
|
||||||
depends_on:
|
|
||||||
redis:
|
|
||||||
condition: service_healthy
|
|
||||||
redis-slave-1:
|
|
||||||
condition: service_started
|
|
||||||
redis-slave-2:
|
|
||||||
condition: service_started
|
|
||||||
networks:
|
|
||||||
- openim
|
|
||||||
|
|
||||||
redis-sentinel-2:
|
|
||||||
image: "${REDIS_IMAGE}"
|
|
||||||
container_name: redis-sentinel-2
|
|
||||||
ports:
|
|
||||||
- "26380:26379"
|
|
||||||
volumes:
|
|
||||||
- "${DATA_DIR}/components/redis/sentinel2:/data"
|
|
||||||
environment:
|
|
||||||
TZ: Asia/Shanghai
|
|
||||||
SENTINEL_PORT: 26379
|
|
||||||
REDIS_MASTER_NAME: redis-master
|
|
||||||
REDIS_MASTER_HOST: 127.0.0.1
|
|
||||||
REDIS_MASTER_PORT: 16379
|
|
||||||
REDIS_MASTER_PASSWORD: openIM123
|
|
||||||
SENTINEL_QUORUM: 2
|
|
||||||
SENTINEL_DOWN_AFTER: 30000
|
|
||||||
SENTINEL_PARALLEL_SYNCS: 1
|
|
||||||
SENTINEL_FAILOVER_TIMEOUT: 180000
|
|
||||||
restart: always
|
|
||||||
command: >
|
|
||||||
bash -c '
|
|
||||||
echo "port $${SENTINEL_PORT}" > /data/sentinel.conf &&
|
|
||||||
echo "sentinel monitor $${REDIS_MASTER_NAME} $${REDIS_MASTER_HOST} $${REDIS_MASTER_PORT} $${SENTINEL_QUORUM}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel auth-pass $${REDIS_MASTER_NAME} $${REDIS_MASTER_PASSWORD}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel down-after-milliseconds $${REDIS_MASTER_NAME} $${SENTINEL_DOWN_AFTER}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel parallel-syncs $${REDIS_MASTER_NAME} $${SENTINEL_PARALLEL_SYNCS}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel failover-timeout $${REDIS_MASTER_NAME} $${SENTINEL_FAILOVER_TIMEOUT}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel resolve-hostnames yes" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel announce-hostnames yes" >> /data/sentinel.conf &&
|
|
||||||
redis-sentinel /data/sentinel.conf
|
|
||||||
'
|
|
||||||
depends_on:
|
|
||||||
redis:
|
|
||||||
condition: service_healthy
|
|
||||||
redis-slave-1:
|
|
||||||
condition: service_started
|
|
||||||
redis-slave-2:
|
|
||||||
condition: service_started
|
|
||||||
networks:
|
|
||||||
- openim
|
|
||||||
|
|
||||||
redis-sentinel-3:
|
|
||||||
image: "${REDIS_IMAGE}"
|
|
||||||
container_name: redis-sentinel-3
|
|
||||||
ports:
|
|
||||||
- "26381:26379"
|
|
||||||
volumes:
|
|
||||||
- "${DATA_DIR}/components/redis/sentinel3:/data"
|
|
||||||
environment:
|
|
||||||
TZ: Asia/Shanghai
|
|
||||||
SENTINEL_PORT: 26379
|
|
||||||
REDIS_MASTER_NAME: redis-master
|
|
||||||
REDIS_MASTER_HOST: 127.0.0.1
|
|
||||||
REDIS_MASTER_PORT: 16379
|
|
||||||
REDIS_MASTER_PASSWORD: openIM123
|
|
||||||
SENTINEL_QUORUM: 2
|
|
||||||
SENTINEL_DOWN_AFTER: 30000
|
|
||||||
SENTINEL_PARALLEL_SYNCS: 1
|
|
||||||
SENTINEL_FAILOVER_TIMEOUT: 180000
|
|
||||||
restart: always
|
|
||||||
command: >
|
|
||||||
bash -c '
|
|
||||||
echo "port $${SENTINEL_PORT}" > /data/sentinel.conf &&
|
|
||||||
echo "sentinel monitor $${REDIS_MASTER_NAME} $${REDIS_MASTER_HOST} $${REDIS_MASTER_PORT} $${SENTINEL_QUORUM}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel auth-pass $${REDIS_MASTER_NAME} $${REDIS_MASTER_PASSWORD}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel down-after-milliseconds $${REDIS_MASTER_NAME} $${SENTINEL_DOWN_AFTER}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel parallel-syncs $${REDIS_MASTER_NAME} $${SENTINEL_PARALLEL_SYNCS}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel failover-timeout $${REDIS_MASTER_NAME} $${SENTINEL_FAILOVER_TIMEOUT}" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel resolve-hostnames yes" >> /data/sentinel.conf &&
|
|
||||||
echo "sentinel announce-hostnames yes" >> /data/sentinel.conf &&
|
|
||||||
redis-sentinel /data/sentinel.conf
|
|
||||||
'
|
|
||||||
depends_on:
|
|
||||||
redis:
|
|
||||||
condition: service_healthy
|
|
||||||
redis-slave-1:
|
|
||||||
condition: service_started
|
|
||||||
redis-slave-2:
|
|
||||||
condition: service_started
|
|
||||||
networks:
|
|
||||||
- openim
|
|
Loading…
Reference in new issue