wordpress文章中出站,河南网站优化建设,凡科登录入口下载,app开发好还是网站开发好前言
本文主要是介绍利用docker打包Eureka注册中心#xff0c;并且发布镜像到服务器#xff0c;遇到的一个比较坑的问题。主要是服务镜像部署完毕之后#xff0c;docker容器都能启动#xff0c;并且也能访问#xff0c;但是其他服务就是无法注册到注册中心。排除问题并且发布镜像到服务器遇到的一个比较坑的问题。主要是服务镜像部署完毕之后docker容器都能启动并且也能访问但是其他服务就是无法注册到注册中心。排除问题本地注册是没有问题所以应该是服务注册eureka的ip地址写错了我试了很多种把ip改为127.0.0.1、本地ip都不行。最终解决办法是需要修改为eureka的docker容器的ip。希望通过分享本次Docker打包Eureka注册中心遇到的问题能够给目前正在学习该知识点的同学一点帮助。
问题重现
Eureka访问发现没有服务注册上来很显然这个问题可能是由于Docker容器之间的网络问题或Eureka服务配置问题导致的才会导致其他服务没发注册到注册中心。 进入docker各个微服务的容器中通过查看日志发现了几个报错内容。
第一个是注册中心连接超时有可能是Docker网络中容器之间无法通过容器名称相互访问导致微服务请求连接注册中心的时候超时。 另一个报错信息是Host不可以这个报错信息就很明显了可能是微服务的application.yml或application.properties文件中的eureka.client.serviceUrl.defaultZone配置不正确。这个配置决定了其他服务将要注册的Eureka服务的URL。所以要检查URL中的主机名和端口号与Eureka服务的实际配置相匹配。 解决办法
由于docker各个容器之间共享同个网络所以可以修改各个服务的注册中心IP地址改为docker容器的内部ip。首先查看IP地址 也可以直接通过用 远程执行命令也可以Centos7
docker exec -it ID/NAMES容器id ip addr 查看微服务的yaml文件配置修改每个微服务的eureka注册中心的地址改为docker容器内部的ip 重新打包构建镜像启动镜像查看各个微服务容器日志没有报错eureka注册中心重新访问发现其他服务已经注册上了。