文章目录
前言
最新在学习Docker,不由自主的深深爱上了它,同时在整理SpringBoot相关资料的时候,整理到redis这块儿,就想搭建个redis的集群,做做相关的测试,写写记录;然后就把Docker给拽进来搭建一个用于测试使用的redis集群,借机顺便也学习巩固一下Docker相关的知识。
Redis集群原理
可参考以下资料,原理其实相对比较好理解
三张图秒懂Redis集群设计原理
redis集群原理
准备工作
- 安装Docker
- 下载redis源码包
mkdir /usr/local/redis_docker cd /usr/local/redis_docker wget http://download.redis.io/releases/redis-4.0.1.tar.gz
- 解压
tar -xzf redis-4.0.1.tar.gz
- 安装gcc
yum install -y gcc-c++
- 编译
make #如果报错,可以尝试:make MALLOC=libc
- 配置redis.conf
vim /usr/local/redis_docker/redis-4.0.1/redis.conf
以下是配置文件中相关的点,请一一对着修改即可- ip绑定
bind 0.0.0.00.0.0.0为不绑定ip
- 设置密码
requirepass 123456789123456789为密码
- 主从复制的验证密码
masterauth 123456789123456789为验证密码
- 日志文件
logfile “/usr/local/redis/logs/redis-server.log”/usr/local/redis/logs/redis-server.log为日志文件的路径
- 开启集群配置
cluster-enabled yes - 集群配置文件
cluster-config-file nodes-6379.conf - 集群超时时间
cluster-node-timeout 15000
- ip绑定
Redis基础镜像创建
- 编写镜像生成文件(Dockerfile)
在文件下拷贝一下内容cd /usr/local/redis_docker vim Dockerfile
#指定基础镜像 FROM centos:7 #镜像作者 MAINTAINER lupf "397729842@qq.com" #定义路径的环境变量 ENV REDIS_HOME /usr/local #将Dockerfile同级目录下的redis-4.0.1.tar.gz复制到镜像的根目录 ADD redis-4.0.1.tar.gz / #创建安装目录,根据环境变量信息,实际的创建目录为:/usr/local/redis RUN mkdir -p $REDIS_HOME/redis #将Dockerfile同级目录下redis-4.0.1中的redis配置文件拷贝到容器的/usr/local/redis目录中 ADD redis-4.0.1/redis.conf $REDIS_HOME/redis/ #更新镜像的yum RUN yum -y update #安装gcc相关编译工具 RUN yum install -y gcc make #指定工作目录 WORKDIR /redis-4.0.1 #执行编译 RUN make #移动编译后的redis-server到容器相关的目录 RUN mv /redis