当前位置: 首页 > news >正文

基于docker的redis集群

1.使用docker-compose创建6个docker容器
2.在宿主机中编写docker-compose,yml(内容在流程后面)
3.在宿主机中创建挂载6个容器的目录
a.每个目录霞再分别创建conf,data,log三个目录
b.config目录下创建redis.conf(内容在流程后面)
c.在log目录项创建空文件:node.conf和redis.log
4.在包含docker-compose,yml的目录下运行docker compose up -d
5.进入每个docker容器并分别运行:/usr/local/bin/redis-server /redis/conf/redis.conf
6.随机在进入一个容器并运行:redis-cli --cluster create 172.18.0.8:6320 172.18.0.9:6321 172.18.0.10:6322 172.18.0.11:6323 172.18.0.12:6324 172.18.0.13:6325 --cluster-replicas 1
7.登录reids(redis-cli),运行cluster nodes,可以查看主从信息
redis.conf:

bind 0.0.0.0
cluster-enabled yes
cluster-config-file "/redis/log/nodes.conf"
cluster-node-timeout 5000
protected-mode no
port 6320 #不同的容器端口不一样
dir "/redis/data"
logfile "/redis/log/redis.log"
daemonize no
pidfile /var/run/redis_6320.pid #不同的容器端口不一样
appendonly yes

docker-compose.yml:

services:redis_200:image: redisnetworks:redis-network:ipv4_address: 172.18.0.8container_name: redis_cluster_200ports:- "6320:6379"- "16320:16379"volumes:- /redis_cluster/200:/redisredis_201:image: redisnetworks:redis-network:ipv4_address: 172.18.0.9container_name: redis_cluster_201ports:- "6321:6379"- "16321:16379"volumes:- /redis_cluster/201:/redisredis_202:image: redisnetworks:redis-network:ipv4_address: 172.18.0.10container_name: redis_cluster_202ports:- "6322:6379"- "16322:16379"volumes:- /redis_cluster/202:/redisredis_203:image: redisnetworks:redis-network:ipv4_address: 172.18.0.11container_name: redis_cluster_203ports:- "6323:6379"- "16323:16379"volumes:- /redis_cluster/203:/redisredis_204:image: redisnetworks:redis-network:ipv4_address: 172.18.0.12container_name: redis_cluster_204ports:- "6324:6379"- "16324:16379"volumes:- /redis_cluster/204:/redisredis_205:image: redisnetworks:redis-network:ipv4_address: 172.18.0.13container_name: redis_cluster_205ports:- "6325:6379"- "16325:16379"volumes:- /redis_cluster/205:/redis
networks:redis-network:external:true
http://www.dtcms.com/a/281961.html

相关文章:

  • 开源 python 应用 开发(七)数据可视化
  • 基于大数据电信诈骗行为分析与可视化预测系统的设计与实现【海量数据、多种机器学习对比、数据优化、过采样】
  • 软路由 + 代理 IP 实现多手机不同公网 IP 分配教程
  • 60个功能OfficeBox 万彩办公大师:PDF 格式转换 OCR识别免费无广告
  • 【数据结构】栈与链表的区别
  • 物联网CAN通讯(控制器局域网络)(寄存器版+HAL库版)
  • 分布式缓存击穿以及本地击穿解决方案
  • xss-labs练习
  • 「源力觉醒 创作者计划」_巅峰对话:文心大模型4.5系列与DeepSeek/Qwen 3.0深度解析
  • React -自定义hooks - 封装双向数据绑定
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 微博类别信息爬取
  • 在 Spring Boot 中监控异步任务的执行情况
  • Flask 项目结构
  • Flask的基本概念
  • Ray集群部署与维护
  • 显示器如何突破 DisplayPort 1.4 的带宽限制,显示更高的分辨率刷新率
  • 网络劫持对用户隐私安全有何影响?
  • python fonttools字体多语言解析
  • iOS 上架被拒 4.3a 【Cocos全面解读】
  • iOS App 上架流程优化指南 工具组合与常见问题处理经验总结
  • 用AI做带货视频评论分析进阶提分【Datawhale AI 夏令营】
  • 插板式系统的“生命线“:EtherCAT分布式供电该如何实现?
  • RoMa: Robust Dense Feature Matching论文精读(逐段解析)
  • docker 安装rabbitmq
  • 【C#】实体类定义的是long和值识别到的是Int64,实体类反射容易出现Object does not match target type
  • 【电脑】显示器的基础知识
  • 微服务相关问题(2)
  • 【前端Vue】this.resetForm(“form“)重置表单时出现indexOf报错的解决方案
  • GraphQL与REST在微服务接口设计中的对比分析与实践
  • Vue 3 中调用子组件方法