docker 镜像方式 redis单机和集群安装手册

Redis单机安装
1.在本地某个位置创建以下内容

mkdir -p /usr/redis
mkdir -p /usr/redis/data
touch /usr/redis/redis.conf
touch /usr/redis/redis.bash
vim /usr/redis/redis.conf
2.编辑配置文件vim /docker/redis/redis.conf

Redis配置文件

Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程

daemonize no

指定Redis监听端口,默认端口为6379

port 6379

绑定的主机地址,不要绑定容器的本地127.0.0.1地址,因为这样就无法在容器外部访问

bind 0.0.0.0

持久化

appendonly yes
3.下载并运行redis镜像
docker run -p 6379:6379 --name redis -v /usr/redis/redis.conf:/etc/redis/redis.conf -v /usr/redis/data:/data -d redis redis-server /etc/redis/redis.conf

docker run redis # 从redis镜像运行容器
-p 6379:6379 # 映射本地6379端口到容器6379端口,前为本地端口
–name redis # 设置容器名称为redis,方便以后使用docker ps进行管理
-v /docker/redis/redis.conf:/etc/redis/redis.conf # 关联本地/docker/redis/redis.conf文件到容器中/etc/redis/redis.conf,同样,前为本地
-v /docker/redis/data:/data # 关联本地/docker/redis/data到容器内/data目录,此为存放redis数据的目录,为方便以后升级redis,而数据可以留存
-d # 后台启动,使用此方式启动,则redis.conf中daemonize必须设置为no,否则会无法启动
redis-server /etc/redis/redis.conf # 在容器内启动redis-server的命令,主要是为了加载配置
4.给予执行权限

sudo chmod 777 /usr/redis/redis.bash

5.连接的容器
docker exec -it redis bash
6.直接使用redis-cli
docker exec -it redis redis-cli

Redis集群安装部署
1.创建相应的挂载目录
mkdir -p /usr/redisclu/node1/data #集群一
mkdir -p /usr/redisclu/node2/data #集群二
mkdir -p /usr/redisclu/node3/data #集群三

2.创建集群节点1并启动容器

docker create --name redis-node1 -v /usr/redisclu/node1/data:/data
-p 6380:6379 redis --cluster-enabled yes
–cluster-config-file redis-node1.conf

docker start redis-node1

3.创建集群节点2并启动容器

docker create --name redis-node2 -v /usr/redisclu/node2/data:/data
-p 6381:6379 redis --cluster-enabled yes
–cluster-config-file redis-node2.conf

docker start redis-node2
4.创建集群节点3并启动容器
docker create --name redis-node3 -v /usr/redisclu/node3/data:/data
-p 6382:6379 redis --cluster-enabled yes
–cluster-config-file redis-node3.conf

docker start redis-node3

5.查看redis-node1容器被分配的IP地址

docker inspect redis-node1

6.查看redis-node2容器被分配的IP地址
docker inspect redis-node2

7.查看redis-node3容器被分配的IP地址
docker inspect redis-node3

8.进入结点并集群搭建
docker exec -it redis-node1 /bin/bash
redis-cli --cluster create 172.17.0.3:6379 172.17.0.4:6379 172.17.0.5:6379 --cluster-replicas 0
9.进入redis客户端并测试
docker exec -it redis-node1 redis-cli -c

Redis主从集群
1.创建相应的挂载目录
mkdir -p /usr/redisclu/node1/data #集群一
mkdir -p /usr/redisclu/node2/data #集群二
mkdir -p /usr/redisclu/node3/data #集群三
mkdir -p /usr/redisclu/node4/data #集群4
mkdir -p /usr/redisclu/node5/data #集群5
mkdir -p /usr/redisclu/node6/data #集群6

2.创建集群节点并启动容器

docker create --name redis-node1 -v /usr/redisclu/node1/data:/data
-p 6380:6379 redis --cluster-enabled yes
–cluster-config-file redis-node1.conf

docker create --name redis-node2 -v /usr/redisclu/node2/data:/data
-p 6381:6379 redis --cluster-enabled yes
–cluster-config-file redis-node2.conf

docker create --name redis-node3 -v /usr/redisclu/node3/data:/data
-p 6382:6379 redis --cluster-enabled yes
–cluster-config-file redis-node3.conf

docker create --name redis-node4 -v /usr/redisclu/node4/data:/data
-p 6384:6379 redis --cluster-enabled yes
–cluster-config-file redis-node4.conf

docker create --name redis-node5 -v /usr/redisclu/node5/data:/data
-p 6385:6379 redis --cluster-enabled yes
–cluster-config-file redis-node5.conf

docker create --name redis-node6 -v /usr/redisclu/node6/data:/data
-p 6386:6379 redis --cluster-enabled yes
–cluster-config-file redis-node6.conf

docker start redis-node1
docker start redis-node2
docker start redis-node3
docker start redis-node4
docker start redis-node5
docker start redis-node6

docker exec -it redis-node1 /bin/bash
redis-cli --cluster create 172.17.0.3:6379 172.17.0.4:6379 172.17.0.5:6379 172.17.0.6:6379 172.17.0.7:6379 172.17.0.8:6379 --cluster-replicas 1

3.查看redis-node容器被分配的IP地址

docker inspect redis-node1
docker inspect redis-node2
docker inspect redis-node3
docker inspect redis-node4
docker inspect redis-node5
docker inspect redis-node6

4.进入结点并集群搭建

docker exec -it redis-node1 /bin/bash
redis-cli --cluster create 172.17.0.3:6379 172.17.0.4:6379 172.17.0.5:6379 172.17.0.6:6379 172.17.0.7:6379 172.17.0.8:6379 --cluster-replicas 1
5.查看redis主从信息
redis-cli
cluster nodes

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值