redis 连接 docker容器 6379端口失败

redis部署在docker容器中Could not connect to Redis 

容器内redis-cli是可以直接连上的,但是在另一台服务器上就不能用外网ip来连了

虽然我创建redis容器时声明了映射TCP 6379。

image linux/0805 是我本地提交镜像 基于 centos7+jdk8

      1.安装 yum install mongodb-org

2.安装 yum install redis

提交镜像到本地 

docker commit e955f248e4ec linux/0805 

 运行本地镜像 

docker run -itd  -p 6379:6379  -p 27017:27017   --name=linux0805  --privileged  linux/0805   /usr/sbin/init 

 mongo 链接没有问题 端口也能通但是 redis-cli -h 127.0.0.1 -p 6379 就是不通 提示Error: Server closed the connection

 

 

尝试修改下redis的配置 

vim /etc/redis.conf

 

在这行后面加上docker给容器分配的ip:
bind 127.0.0.1 172.17.0.3

其实127.0.0.1在docker容器里可能没什么用,不过我保留着没有动它。

反思,docker在映射端口问题上,除了要注意某些应用需要声明映射UDP协议外(比如stun/turn),还要小心某些TCP应用默认只监听127.0.0.1这一个IP,而忽略了宿主机映射过来的IP。

posted @   托马斯布莱克  阅读(8064)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示