docker开启consul后 莫名连不上8500端口

  一个新项目,需要本地跑docker环境,配置完后,一切正常。过了几个小时,项目就各种报错,然后就全部不能用了,排查下来,原来是项目连consul超时了,导致后续都走不下去了

  然后就看consul出啥问题了,在docker下查看进程

docker ps -a

  看到consul是up状态,是正常的

  奇怪了,consul是正常的啊,为什么项目连consul就超时?尝试着在浏览器访问 127.0.0.1:8500 ,居然是永远打转,打不开。问题就出现在这里了

  既然docker里看是正常的,浏览器访问不了,那就是映射出了问题?但是,刚启动的时候,是一切正常的,不然,项目也不会跑了几个小时的

  面向谷歌编程,搜出来的东西也没看出来有啥有用的信息

  时间已经过了两个小时了,无奈,只能使用最原始的方式-“重启”来临时解决问题了 先是使用docker restart dev-consul 重启容器,发现容器是起来了,但是,浏览器还是不能访问; 又接着把容器删除了,再重新run容器,还是不行; 最后,只好重启电脑了,神奇的是,重启电脑后,在start 容器,居然真的一切正常了

  本来以为事情告一段落了,哪知道,过了几个小时,又碰到了相同的问题:项目又各种报错,连consul超时。知道这是必现的问题,那就规避不了,必须要解决了

  尝试着找运维帮我看这问题,运维发我一些命令,我执行完,截图给运维,运维也没发现明显的问题。来来回回几次后,对运维也不报太大希望了

  又找组内技术大神帮我看,大神也是发了一些命令,执行后发他截图,无果;又查看本地8500端口是谁占用,对比两台机器的不同;又去telenet查看端口是否是通的;甚至对比两台机器docker的版本,我本地是Version 2.0.0.2,他是Version 2.0.0.3,我升级到2.0.0.3.。。。

  就这样,一天的时间过去了,问题还没根本解决

  第二天,果然问题又再次复现,为了保证先完成当日工作,只有先重启docker,再重启docker容器。

  这个问题必须要解决,不然很麻烦,因为重启docker后,对consul依赖的本地5个项目都得重启一遍

  百撕不得骑姐,我一直在捋思路,几个同事都安装了环境,docker版本、镜像版本也是一致,就连run命令都是用是同一套,现状是他们都没出现问题,只有我接连出现问题,那必然是我本地哪出了问题。   我本地和他们本地,肯定有哪不一样的地方,十有八九就是那个地方捣的鬼

  就这样逐一排除,终于发现一个可疑软件- 有道词典

  为了确定这个问题,重启电脑,重启后,第一个就把有道词典退出,再启动docker,再启项目,一天过去了,之前发生的映射问题,再也没有出现过了。

  至此,真象大白了,是有道词典的锅。以后工作电脑,是不会安装它的了

发布了158 篇原创文章 · 获赞 193 · 访问量 148万+

猜你喜欢

转载自blog.csdn.net/zy_281870667/article/details/103343695