前提:使用docker-compose方式对各服务应用进行编排和启动,配置确认好之后,脚本也测试过多次,基础应用和业务模块应用均成功启动,日志排查没有报错。
当前:进入项目平台首页之后,第一个接口调用auth模块鉴权接口成功执行,auth内部调用system模块查询用户接口时,报了以上用户服务调用失败:connect timed out executing GET http://SERVICE-NAME。
过程:连接超时第一反应就是地址之类的配置有问题,排查了很多nacos里的配置信息,发现都是正确无误的,瞬间发现这个问题非常奇怪,后来怀疑到是不是容器内部的docker地址,通过nacos里的服务列表可以查看各容器的虚拟地址,如下图所示:
然后就发现问题原因:auth和gateway的IP是172.16.0开头,而system以172.17.0开头,同一个docker环境走docker-compose方式部署启动的容器居然出现B段不一致的情况,当重新run了system容器之后,ip恢复一致。先在此记录一下,后续有空再深挖一下。