version: “3.8”
services:
redis7001:
image: redis:alpine
container_name: redis7001
#设置主机名
hostname: redis7001
restart: always
#privileged: true
#挂载目录,相当于 docker run -v 主机目录:容器目录
volumes:
– /home/data/redis/7001/data:/data
– /home/data/redis/7001/conf:/conf
#启动容器执行命令,相当于docker run [镜像:tag] [命令], 登录redis: redis-cli -h 192.168.0.80 -p 6379 -a Dszn@2020
command: redis-server –appendonly yes –cluster-enabled yes –cluster-config-file /conf/nodes.conf –cluster-announce-ip 192.168.2.131 –cluster-announce-port 7001 –cluster-announce-bus-port 17001
ports:
– “7001:6379”
– “17001:16379”
#指定环境变量,相当于docker run -e 参数, 登录mysql: mysql -h192.168.3.80 -P3306 -uroot -pDs20Pwd@
environment:
– TZ=Asia/Shanghai
networks:
– mynetwork
deploy:
placement:
constraints:
– node.hostname == manager
– node.role == manager
redis7002:
image: redis:alpine
container_name: redis7002
#设置主机名
hostname: redis7002
restart: always
#privileged: true
#挂载目录,相当于 docker run -v 主机目录:容器目录
volumes:
– /home/data/redis/7002/data:/data
– /home/data/redis/7002/conf:/conf
#启动容器执行命令,相当于docker run [镜像:tag] [命令], 登录redis: redis-cli -h 192.168.0.80 -p 6379 -a Dszn@2020
command: redis-server –appendonly yes –cluster-enabled yes –cluster-config-file /conf/nodes.conf –cluster-announce-ip 192.168.2.131 –cluster-announce-port 7002 –cluster-announce-bus-port 17002
ports:
– “7002:6379”
– “17002:16379”
#指定环境变量,相当于docker run -e 参数, 登录mysql: mysql -h192.168.3.80 -P3306 -uroot -pDs20Pwd@
environment:
– TZ=Asia/Shanghai
networks:
– mynetwork
deploy:
placement:
constraints:
– node.hostname == manager
– node.role == manager
redis7003:
image: redis:alpine
container_name: redis7003
#设置主机名
hostname: redis7003
restart: always
volumes:
– /home/data/redis/7003/data:/data
– /home/data/redis/7003/conf:/conf
command: redis-server –appendonly yes –cluster-enabled yes –cluster-config-file /conf/nodes.conf –cluster-announce-ip 192.168.2.132 –cluster-announce-port 7003 –cluster-announce-bus-port 17003
ports:
– “7003:6379”
– “17003:16379”
environment:
– TZ=Asia/Shanghai
networks:
– mynetwork
deploy:
placement:
constraints:
– node.hostname == worker1
redis7004:
image: redis:alpine
container_name: redis7004
#设置主机名
hostname: redis7004
restart: always
volumes:
– /home/data/redis/7004/data:/data
– /home/data/redis/7004/conf:/conf
command: redis-server –appendonly yes –cluster-enabled yes –cluster-config-file /conf/nodes.conf –cluster-announce-ip 192.168.2.132 –cluster-announce-port 7004 –cluster-announce-bus-port 17004
ports:
– “7004:6379”
– “17004:16379”
environment:
– TZ=Asia/Shanghai
networks:
– mynetwork
deploy:
placement:
constraints:
– node.hostname == worker1
redis7005:
image: redis:alpine
container_name: redis7005
#设置主机名
hostname: redis7005
restart: always
volumes:
– /home/data/redis/7005/data:/data
– /home/data/redis/7005/conf:/conf
command: redis-server –appendonly yes –cluster-enabled yes –cluster-config-file /conf/nodes.conf –cluster-announce-ip 192.168.2.132 –cluster-announce-port 7005 –cluster-announce-bus-port 17005
ports:
– “7005:6379”
– “17005:16379”
environment:
– TZ=Asia/Shanghai
networks:
– mynetwork
deploy:
placement:
constraints:
– node.hostname == worker2
redis7006:
image: redis:alpine
container_name: redis7006
#设置主机名
hostname: redis7006
restart: always
volumes:
– /home/data/redis/7006/data:/data
– /home/data/redis/7006/conf:/conf
command: redis-server –appendonly yes –cluster-enabled yes –cluster-config-file /conf/nodes.conf –cluster-announce-ip 192.168.2.133 –cluster-announce-port 7006 –cluster-announce-bus-port 17006
ports:
– “7006:6379”
– “17006:16379”
environment:
– TZ=Asia/Shanghai
networks:
– mynetwork
deploy:
placement:
constraints:
– node.hostname == worker2
#声明网桥
networks:
#定义服务网桥名称
mynetwork:
#指定网桥驱动,有bridge/overlay,默认是bridge
driver: overlay
#false-统自动创建网桥名,格式为: 目录名_网桥名,默认为false; true-使用外部创建的网桥,需要自己手动创建
external: true
#挂载目录,声明服务使用的创建卷名
volumes:
mysqldata:
#false-系统自动创建的卷名,格式为: 目录名_卷名,默认为false; true-使用外部创建的卷面,需要自己手动创建
external: false