我们在ECS Fargate中部署了Spring Boot服务,包括Eureka注册服务、网关服务和一些业务服务。在Eureka注册表页面中,所有注册的客户端服务都显示相同的IP(可能是容器IP)。
请分享应该提供什么配置来注册ECS任务专用ip而不是容器ip。提前谢谢。
Eureka服务应用程序属性:
server.port=8080
eureka.client.register with eureka=false
eureka.client.fetch注册表
Eureka客户服务应用程序属性
服务器端口=8766
Spring。应用。名称=客户端服务
eureka.client.registereureka=true
eureka.client.fetch registry=true
eureka.instance.preferIP地址
eureka.client.service-url.default区=: 8080
eureka.instance.lease续订间隔(秒)=30
对于仍然无法用公认答案解决问题的人:
我还必须在配置中设置安全/非安全端口(并启用它)。
通过将以下代码添加到SpringBootApplication源代码中,问题得以解决。此块选择更新主机IP地址(而不是容器),并覆盖配置属性/yaml设置。
@Bean
public EurekaInstanceConfigBean eurekaInstanceConfig(InetUtils inetUtils){
EurekaInstanceConfigBean config = new EurekaInstanceConfigBean(inetUtils);
String ip = null;
try {
ip = InetAddress.getLocalHost().getHostAddress();
} catch (UnknownHostException e) {
e.printStackTrace();
}
config.setIpAddress(ip);
config.setPreferIpAddress(true);
return config;
}
pom.xml 主应用程序类 Application.Properties eureka客户端设置 pom.xml Application.Properties 我在eureka-server仪表板(http://localhost:8761)中没有看到向Eureka server注册的micro-service-currency-exchange-service 为什么eureka客户端没有注册
我对docker,Spring框架的一切都很陌生…它们成功地在localhost环境中运行,现在我想把它们推送到docker中,但是总是给我错误,我在那里卡住了大约一周。有人能帮我弄清楚吗!!! 现在我有 eureka 服务器和云配置服务器服务,这是我的代码: 尤里卡服务器应用程序.yml 和 Dockerfile: 现在我有云配置服务器应用程序.yml:在这个文件中,我试图在github上备份它
我有一个工作中的Eureka注册表,其中注册了许多Spring-Boot应用程序。我知道这是有效的,因为他们能够找到对方,并通过尤里卡注册中心进行交流。 当我启动我的新SBA应用程序时,我可以看到它自己在Eureka注册表中注册,所以它正在查找Eureka。然而,当我打开SBA UI时,它是空的,只是说“没有应用程序注册。”在我的控制台上,我可以一遍又一遍地看到下面的堆栈跟踪。
我已经在Eureka发现服务器、Config服务器和其他Eureka客户机中启用了ssl。配置服务器能够安全地向Discovery Server注册,Eureka仪表板显示配置服务器的正确健康检查URL信息。配置服务器有一个硬编码端口,但是,其他Eureka客户端被配置为分配一个随机端口。这些客户端可以注册到Eureka服务器,但是,这些客户端的端口在Eureka仪表板上显示为0。我不知道我错过了
我想在Spring启动的eureka服务器上注册Grails 2.4.4中的eureka客户端。 我已经在同一台eureka服务器上从spring boot注册了另一个eureka服务,它运行良好。当我运行grails应用程序时,它会给我一个错误: 这是我的申请表。属性文件: 任何帮助都是值得的。 谢谢