基于Spring cloud的微服务应用部署到docker中,通过ribbon/zuul不能访问?
在本地调试spring cloud微服务应用,应用可以注册到eureka上,应用可以通过ribbon或者zuul访问。并且在eureka上可以看到应用所对应的ip地址。
当部署到docker后,eureka不能读取应用所在ip地址,并且通过ribbon/zuul等也不能访问应用,报错如下,想请问怎么办?
I/O error on GET request for "http://API-ADMIN/microservice/1": 280d0f4200d8; nested exception is java.net.UnknownHostException: 280d0f4200d8
已在应用中配置ip地址,但是在docker环境中不可以,毕竟docker是独立的环境
eureka:
instance:
prefer-ip-address: true
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
原因:
分布在三台机器的docker镜像,它们的ip分别是镜像中的ip,故是不能互相想问。
解决方法:
利用Docker Swarm,配置网络。以下链接是一个具体方法。
http://blog.csdn.net/alaska_b...
当然,也可以用K8s等工具解决。但是其本质问题是网络不通造成的。