Win下Docker构建Redis集群redis-cluster

这里引用了

https://blog.csdn.net/xielinrui123/article/details/85104446

使用的也是redis3.0.7

docker的安装就不做介绍,直接正题

docker pull redis:3.0.7  拉取指定版本的Redis镜像

docker pull ruby 拉取Ruby的镜像

然后下载redis的安装包

http://120.52.51.16/download.redis.io/releases/redis-3.0.7.tar.gz

下载后解压,copy出redis.conf文件

放在工作目录下,然后修改redis.conf的配置,开启Redis集群模式,打标志处

改完后创建Dockerfile

内容如下

FROM redis:3.0.7
EXPOSE 6379
#替换redis.conf
ADD redis.conf /redis.conf
#这个是当run执行时,执行redis-server语句,默认携带参数时/redis.conf
ENTRYPOINT ["redis-server", "/redis.conf"]

然后就是构建节点镜像,打开cmd,路径切到工作目录下,调用build构建镜像

docker build -t redis-cluster:3.0.7 .

接下来,

为了创建redis节点容器时能指定ip,需要创建一个redis-net的网络,在这个网络模块上创建一个容器,并指定ip

docker network create --subnet 172.10.0.0/16 redis-net

注意:这里的 172.10.0.0/16 ip可以随意写,可通过 docker network ls 来查询

接下来开始创建容器。6个redis节点,

docker run -d --net redis-net --ip 172.10.0.92 -p 8002:6379 --name redis-test2 redis-cluster:3.0.7
docker run -d --net redis-net --ip 172.10.0.91 -p 8001:6379 --name redis-test1 redis-cluster:3.0.7
docker run -d --net redis-net --ip 172.10.0.93 -p 8003:6379 --name redis-test3 redis-cluster:3.0.7
docker run -d --net redis-net --ip 172.10.0.94 -p 8004:6379 --name redis-test4 redis-cluster:3.0.7
docker run -d --net redis-net --ip 172.10.0.95 -p 8005:6379 --name redis-test5 redis-cluster:3.0.7
docker run -d --net redis-net --ip 172.10.0.96 -p 8006:6379 --name redis-test6 redis-cluster:3.0.7

然后在你的工作目录上再创建一个空文件夹,里面放入 redis-trib.rb ,这个文件在redis.x.x.x /src下面的,然后在redis-trib.rb同目录下创建一个Dockerfile,用来构建ruby镜像,里面填入

FROM ruby

ADD redis-trib.rb /redis-trib.rb

然后执行 docker build -t ruby-redis:3.0.7  . 

然后创建容器,使用跟刚才运行的redis节点相同的network环境

docker run --net redis-net --ip 172.10.0.100 --name ruby -i -d ruby-redis

然后使用命令 docker exec -it ruby bash 进入容器内部

执行命令,用 --version 来指定特定版本的redis插件

gem install redis --version 3.0.7

最后搭建集群,执行redis-trb.rb脚本,将之前的ip输入

./redis-trib.rb create --replicas 1 172.10.0.91:6379 172.10.0.92:6379 172.10.0.93:6379 172.10.0.94:6379 172.10.0.95:6379 172.10.0.96:6379

输入yes

如此,全部节点就打开了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值