Docker安装Redis集群

Docker的出现,降低了很多中间件的搭建的成本,而且Docker镜像可以把整个搭建过程记忆起来,在新的环境中,只要安装了Docker环境,那么只要把镜像移植,就可以创建一个新的Redis环境,而且搭建成本很低,这就是Docker技术的一大价值。

和Java的Maven管理一样,一个好的Java框架,只要引入pom依赖,并且进行简单的配置或者引入注解,即可进行运行,不用管内部细节。那么对于RedisDocker项目也是一样,如果对于使用者来说,只要进行:

  • 配置文件修改 -> 修改properties文件
  • 引入DockerFile -> 引入Pom依赖
  • 运行Docker命令 -> 运行Maven命令

即可构建一个系统,那么整个中间件的环境搭建就具有极简的风格

因此,打算构建一个自定义的RedisDocker镜像, 并发布为容器集群。

还是按照三要素的模式进行:

  1. Redis集群配置
##节点端口
port 6379
requirepass 123456
masterauth 123456

##cluster集群模式
cluster-enabled yes
##集群配置名
cluster-config-file nodes.conf
##超时时间
cluster-node-timeout 5000

## 可以不用配置下面的配置
## cluster-announce-ip 172.18.0.1 ##实际为各节点网卡分配ip 先用上网关ip代替
## cluster-announce-port ${PORT} ##节点映射端口
## cluster-announce-bus-port 1${PORT} ##节点总线端


## 慢查询
slowlog-log-slower-than 10000
slowlog-max-len 128

# 日志文件
logfile "/usr/local/redis/logs/redis-server.log"

## 持久化模式
appendonly yes
## 持久化文件目录
dir /usr/local/redis/data

## 内存相关配置
maxmemory 100M
  1. Redis集群dockerfile文件
FROM redis:6.2.5
MAINTAINER Gaaidou openjdk8@163.com

# Redis端口
EXPOSE 6379

# 复制文件
COPY redis-cluster.conf /usr/local/redis/redis.conf

# 启动
CMD ["redis-server", "/usr/local/redis/redis.conf" ]
  1. 执行的Shell 脚本
# 循环建文件夹与
for index in $(seq 7000 7005)
do
  mkdir /opt/redis/logs-$index
  mkdir /opt/redis/data-$index
done

# Redis集群镜像构建
docker build -t redis-cluster:1.0.0 .

# Redis集群容器构建
docker run -d --name redis-cluster-7000 -v /opt/redis/data-7000:/data -v /opt/redis/logs-7000:/usr/local/redis/logs -p 7000:6379 -d redis-cluster:1.0.0
docker run -d --name redis-cluster-7001 -v /opt/redis/data-7001:/data -v /opt/redis/logs-7001:/usr/local/redis/logs -p 7001:6379 -d redis-cluster:1.0.0
docker run -d --name redis-cluster-7002 -v /opt/redis/data-7002:/data -v /opt/redis/logs-7002:/usr/local/redis/logs -p 7002:6379 -d redis-cluster:1.0.0
docker run -d --name redis-cluster-7003 -v /opt/redis/data-7003:/data -v /opt/redis/logs-7003:/usr/local/redis/logs -p 7003:6379 -d redis-cluster:1.0.0
docker run -d --name redis-cluster-7004 -v /opt/redis/data-7004:/data -v /opt/redis/logs-7004:/usr/local/redis/logs -p 7004:6379 -d redis-cluster:1.0.0
docker run -d --name redis-cluster-7005 -v /opt/redis/data-7005:/data -v /opt/redis/logs-7005:/usr/local/redis/logs -p 7005:6379 -d redis-cluster:1.0.0

# 获取Redis的容器ip
docker inspect --format='{{.NetworkSettings.IPAddress}}' redis-cluster-7000
docker inspect --format='{{.NetworkSettings.IPAddress}}' redis-cluster-7001
docker inspect --format='{{.NetworkSettings.IPAddress}}' redis-cluster-7002
docker inspect --format='{{.NetworkSettings.IPAddress}}' redis-cluster-7003
docker inspect --format='{{.NetworkSettings.IPAddress}}' redis-cluster-7004
docker inspect --format='{{.NetworkSettings.IPAddress}}' redis-cluster-7005

# Redis 集群创建
redis-cli --cluster create 172.17.0.2:6379 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 --cluster-replicas 1 -a 123456

执行CLUSTER NODES命令,即可看到哈希槽分布情况,说明集群搭建成功
在这里插入图片描述

下次在新的环境进行Redis集群搭建时,只需要上面三步即可。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在docker安装redis集群,首先需要确保已经安装docker并启动了docker服务。可以按照引用中的步骤来卸载之前可能存在的残留文件,并通过阿里云docker yum源配置好docker安装源。 接下来,需要准备一个Linux系统机器,并在该机器上安装docker。确保已经对docker的基本知识有所了解,并熟悉docker的常用命令,可以参考引用中的博文来学习docker的基础知识。 一旦docker安装完成并启动了服务,就可以开始搭建redis集群了。可以在docker容器中安装redis,具体的安装步骤可以通过查阅相关文档或教程来获取。在安装redis之前,可以使用以下命令来启动docker服务: ``` systemctl enable docker systemctl start docker ``` 通过以下命令可以查看docker的版本信息: ``` docker version ``` 以上是在docker安装redis集群的大致步骤,具体的安装和配置过程可能会因为不同的环境和需求而有所差异。建议在安装之前仔细阅读相关的文档和教程,以确保正确地安装和配置redis集群。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [docker搭建redis集群详细篇](https://blog.csdn.net/m0_55116875/article/details/122220918)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [docker下搭建redis集群](https://blog.csdn.net/weixin_44947701/article/details/128161008)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值