0

设想:

我们有 dev、qa、prod 环境,并且在每个环境中我们都想运行 2 个 eureka 服务器。

所以我们希望能够使用两个配置文件运行 EurekaServer 应用程序:dev,eureka1(在 devserver1 上)和 dev,eureka2(在 devserver2 上)——其中 eureka1 和 eureka2 属性也是特定于环境的。

如果我创建以下 eureka-dev.yml

server:
   port: 8761

---
spring:
   profiles: eureka1

eureka:
  client:
    serviceUrl:
       defaultZone: http://user:${eureka.password}@devserver2:8761/eureka/ 

---
spring:
   profiles: eureka2

eureka:
  client:
    serviceUrl:
       defaultZone: http://user:${eureka.password}@devserver1:8761/eureka/ 

它似乎没有拾取 eurekaX 配置文件。我知道我可以创建 eureka-eureka1.yml 和 eureka-eureka2.yml,但试图找出最有效的方法是什么。

4

1 回答 1

0

它不会那样工作,因为 Spring Boot 不会(特定于配置文件的配置文件本身不能包含来自其他配置文件的特定于配置文件的内容)。我可以看到它背后的逻辑,所以如果我是你,我会用 Spring Boot 打开一个功能请求。

至于使用现有功能解决它,如果我是你,我会将所有内容放在一个文件“eureka.yml”中。如果这些文件变得太大,那么我怀疑存在不同的问题。

于 2015-01-21T09:21:15.693 回答