一、問題描述
近期將測試環境的dubbo服務更換為docker啟動,當啟動服務,查看容器日志,報錯如下:
服務相關版本:
1)dubbo服務:2.7.7
2)zookeeper版本:3.4.6
3)docker版本:19.03.8
二、思路分析
1)查看zookeeper配置是否正確,主要是端口 ==》確認無誤
2)zookeeper版本問題 ==》更換其他版本同樣報錯,同時不使用docker容器,正常啟動是可以連接zookeeper的,說明不是zookeeper版本問題
3)hosts文件ip映射
4)連接超時
在網上找了很多方法,都不行。對比兩套環境的服務啟動日志:
83環境(無問題):
206環境(報錯):
查看dubbo服務連接zookeeper的配置:
問題找到了,容器不能指定連接127.0.0.1,而需要指定連接公網ip地址或者內網ip地址
三、問題解決
將zookeeper的連接地址修改為服務器的內網地址