docker安裝redis集羣

拉取redis鏡像redis

docker pull docker.io/redis:3.2docker

而後給一個Dockerfile文件吧ruby

ruby的服務器

FROM ruby:2.2.5tcp

 

RUN gem install redisui

ADD ./redis-3.2.6.tar.gz /usr/localrest

RUN cd /usr/local && ln -s redis-3.2.6 redisserver

以三臺服務器爲例,Docker容器建立運行docker run -d --name redis1 --net=host -v /etc/localtime:/etc/localtime:ro  docker.io/redis:3.2 redis-server --port 7111 --cluster-enabled yes,--net=host是使用母機的ip。ip

docker run -it --net=host --rm build_repo/ruby /usr/local/redis/src/redis-trib.rb create --replicas  1 172.31.27.67:7111 172.31.27.67:7112 172.31.27.68:7113 172.31.27.68:7114 172.31.27.69:7115 172.31.27.69:7116cmd

注意,此處若是加了CentOS 7的防火牆,以7111端口爲例,必定要把redis總線端口17111添加進去

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="172.31.27.69" port protocol="tcp" port="17111" accept"

service firewalld restart

運行ruby必定要加--net=host,不然會被防火牆擋住,沒法鏈接節點。

相關文章
相關標籤/搜索