【Redis】使用Docker镜像配置集群时的Operation timed out问题

news2024/12/23 7:19:22

不知道有没有小伙伴跟我一样是使用的Docker镜像进行Redis集群案例模拟的(三台虚拟机确实带不动= =),然后我遇到了一个问题:Could not connect to Redis at 172.17.0.2:6379: Operation timed out

172.17.0.2是我其中一个Redis实例的IP和端口号,并且我用主机ping 172.17.0.2是可以ping通的

于是我又仔细翻了翻官网集群的相关内容,发现了如下一段

大致翻译下:

目前,Redis Cluster 不支持 NAT 环境以及一般 IP 地址或 TCP 端口重新映射的环境。

而Docker使用技术的就是端口映射:在Docker容器内运行的程序可能会使用与程序认为正在使用的端口不同的端口来公开。

在 Docker 容器内运行的程序可能会使用与程序认为正在使用的端口不同的端口来公开。这对于在同一服务器中同时使用相同端口运行多个容器非常有用。

为了让Docker兼容Redis Cluster,需要使用Docker的主机组网模式。请参阅Docker 文档--net=host中的选项以获取更多信息。

我们来Docker这里瞅瞅

https://docs.docker.com/network/icon-default.png?t=N6B9https://docs.docker.com/network/

果然,发现了很关键的一句

容器是不会向外暴露任何端口的!

所以才会出现IP能ping通,但是加上端口后Operation timed out

当然,后面也提供了解决方法:启动容器时加--publish or -p

但是紧接着,官网也提出了这么操作并不安全,并建议如果想让一个容器可供其他容器访问,则无需发布该容器的端口。通过将容器连接到同一网络(通常是桥接网络)来启用容器间通信。

虽然提供了处理方法,但是个人还是建议直接按照官网的集群案例来进行集群搭建案例:

https://redis.io/docs/management/scaling/#create-a-redis-clustericon-default.png?t=N6B9https://redis.io/docs/management/scaling/#create-a-redis-cluster

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/852139.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

解决域控转移5个角色后关掉原主域控无法使用

最近域控win2016要升级到win2022,每次都是角色转移了,但是原先域控断网后,新角色域控无法单独运行,会提示找不到域服务器之类的 //转移5大角色 //需要在powershell执行 Move-ADDirectoryServerOperationMasterRole -Identity 你的…

Electron+vue3项目使用SQLite3数据库

SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库不一样,我们不需要在系统中配置。 就像其他数据库,SQLite 引擎不是一个独立的进程&am…

C#,数值计算——多维下坡单纯形法(Downhill Simplex Method in Multidimensions)的计算方法与源程序

using System; namespace Legalsoft.Truffer { /// <summary> /// 多维下坡单纯形法 /// Downhill Simplex Method in Multidimensions /// </summary> public class Amoeba { private int nfunc { get; set; } private …

代理模式及常见的3种代理类型对比

代理模式及常见的3种代理类型对比 代理模式代理模式分类静态代理JDK动态代理CGLIBFastclass机制 三种代理方式之间对比常见问题 代理模式 代理模式是一种设计模式&#xff0c;提供了对目标对象额外的访问方式&#xff0c;即通过代理对象访问目标对象&#xff0c;这样可以在不修…

kubernetes 集群命令行工具 kubectl

1、kubectl 概述 kubectl是一种命令行工具&#xff0c;用于管理Kubernetes集群和与其相关的资源。通过kubectl&#xff0c;您可以查看和管理Pod、Deployment、Service、Volume、ConfigMap等资源&#xff0c;也可以创建、删除和更新它们。 kubectl还提供了许多其他功能&#x…

那些你不知道的类和对象的知识

&#x1f388;个人主页:&#x1f388; :✨✨✨初阶牛✨✨✨ &#x1f43b;推荐专栏1: &#x1f354;&#x1f35f;&#x1f32f;C语言初阶 &#x1f43b;推荐专栏2: &#x1f354;&#x1f35f;&#x1f32f;C语言进阶 &#x1f511;个人信条: &#x1f335;知行合一 &#x1f…

vscode运行python报错:ModuleNotFoundError:No module named ‘xxx‘

在乌班图上使用pycharm的时候&#xff0c;pycharm总是莫名其妙卡死&#xff0c;又说是搜狗输入法的锅&#xff0c;又说别的原因&#xff0c;一气之下不用pycharm,转到vscode上&#xff0c;没想到出现了如下报错。 就是vscode在运行python的时候&#xff0c;自定义模块的调用无…

springboot配置文件的使用

目录 1.application.properties是springboot默认的配置文件&#xff0c;但是比较繁琐&#xff0c;一般用.yml文件 2. 配置文件的作用 3.配置文件的使用 1.application.properties是springboot默认的配置文件&#xff0c;但是比较繁琐&#xff0c;一般用.yml文件 ①、properti…

【设计模式】模板模式

什么是模板模式&#xff1f; 模板方法模式&#xff08;Template Method Pattern&#xff09;&#xff0c;又叫模板模式(Template Pattern)&#xff0c;在一个抽象类公开定义了执行它的方法的模板。它的子类可以按需要重写方法实现&#xff0c;但调用将以抽象类中定义的方式进行…

LeetCode--HOT100题(25)

目录 题目描述&#xff1a;141. 环形链表&#xff08;简单&#xff09;题目接口解题思路代码 PS: 题目描述&#xff1a;141. 环形链表&#xff08;简单&#xff09; 给你一个链表的头节点 head &#xff0c;判断链表中是否有环。 如果链表中有某个节点&#xff0c;可以通过连…

SpringBoot集成极光推送完整实现代码(建议收藏)

工作中经常会遇到服务器向App推送消息的需求&#xff0c;一般企业中选择用极光推送的比较多&#xff0c;在集成极光时发现极光的文档并不完整&#xff0c;网上的文章也很多不能直接使用&#xff0c;这里列出我在工作中集成极光的全部代码&#xff0c;只需要按照如下代码保证一次…

Error: Design has unresolved cell reference

我正在「拾陆楼」和朋友们讨论有趣的话题&#xff0c;你⼀起来吧&#xff1f; 拾陆楼知识星球入口 所有的unresolved cell reference问题都是cell信息没读到引起的&#xff0c;在dc/pt里就是db没读到&#xff0c;在ICC2里就是ndm没读。 ICC2中午饭这个问题可以report_design_…

MyBatisPlus解决逻辑删除与唯一索引的兼容问题

需求背景 比如有张用户表,在插入或者更新数据的时候&#xff0c;我们需要 用户名称(username),不能重复。 我们首先考虑的是给该字段创建唯一索引 <span style"color:#4b4b4b"><span style"background-color:#ffffff"><code class"…

JavaWeb-能制作中小型网站企业管理系统(适合快速梳理)

导言 第一章 Web前端开发 一、初始web前端 二、HTML、CSS介绍 三、VsCode安装 四、标签 1 实现标题--排版 2 实现标题--样式 颜色表示 CSS选择器 3 实现标题--超链接 4 实现标签--正文 5 页面布局 盒子模型 布局标签 6 表格、表单标签 表格标签 表单标签 表单项 …

Electron学习1 安装环境与第一个程序

Electron学习1 安装环境与第一个程序 一、 Electron 简介二、安装 nvm三、安装nodejs四、安装nrm五、安装electron1. npm 初始化2. 创建 package.json3. 安装electron4. 创建一个页面5. 创建文件main.js6. 创建预加载器文件 preload.js7. 启动程序 六、打包 一、 Electron 简介…

大模型在金融医疗、生命系统和物理仿真领域的创新应用探索

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 在当今迅速发展的科技领域&#xff0c;大模型技术正日益成为金融医疗、生命系统和物理仿真等领域中的重要工具。2023年6月16日&#xff0c;AI TIME举办的青年科学家大模型专场活动邀请了国防科技大学理学院数学…

springboot+vue智能化网络电子相册图片管理系统_84ds3

随着计算机技术发展&#xff0c;计算机系统的应用已延伸到社会的各个领域&#xff0c;大量基于网络的广泛应用给生活带来了十分的便利。所以把智能化电子相册与现在网络相结合&#xff0c;利用计算机搭建智能化电子相册系统&#xff0c;实现智能化电子相册的信息化。则对于进一…

超级浏览器与指纹浏览器:功能与特点的比较

导语&#xff1a;随着互联网的快速发展&#xff0c;隐私和安全问题日益受到关注。在这个背景下&#xff0c;超级浏览器和指纹浏览器作为定制化浏览器的两个重要类型&#xff0c;各自具有独特的功能和特点。本文将对超级浏览器和指纹浏览器进行比较&#xff0c;帮助读者更好地理…

微信小程序nodejs+vue+uniapp校运会高校运动会报名管理系统

3.1小程序端 小程序登录页面&#xff0c;用户也可以在此页面进行注册并且登录等。 登录成功后可以在我的个人中心查看自己的个人信息或者修改信息等 在广播信息中我们可以查看校运会发布的一些信息情况。 在首页我们可以看到校运会具体有什么项目运动。 在查看具体有什么活动我…

linux I/O性能优化

Linux 文件系统 磁盘和文件系统的关系&#xff1a; 磁盘为系统提供了最基本的持久化存储。 文件系统则在磁盘的基础上&#xff0c;提供了一个用来管理文件的树状结构。 文件系统工作原理 索引节点和目录项 文件系统&#xff0c;本身是对存储设备上的文件&#xff0c;进行组织…