Consul 键值对用于 Spring-boot 中的配置

Consul key value pair use for configuration in Spring-boot

我试图将我的注册服务器从 "Eureka" 更改为 "Consul" 并将 Consul 作为我的配置服务器。 Consul 的服务发现是 success.But 我不明白如何为 bootstrap 我的应用程序获取 key/value 对选项。有什么办法可以做到吗?

我使用 spring 启动并具有以下依赖项

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-consul-config</artifactId>
</dependency>
<dependency>
        <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>

这是我的 spring 启动应用 ConsuleDemoApplication.class

@EnableDiscoveryClient
@SpringBootApplication
@RestController
public class ConsuleDemoApplication {

    @RequestMapping("/")
    public String home() {
        return "Hello world";
    }

    public static void main(String[] args) {
        SpringApplication.run(ConsuleDemoApplication.class, args);
    }
}

我的 bootstrap.yml 是

spring:
  cloud:
    consul:
      discovery:
        healthCheckInterval: 15s
        instanceId: ${spring.application.name}:${spring.application.instance_id:${random.value}}

  application:
    name: consul_demo

spring 引导配置正常。然后使用 localhost:8500 和 select key/value 去 consul ui 并添加如下键值

然后创建 it.then 创建配置如下

然后重新启动您的 spring 启动应用程序。您的端口更改为 8084。

note: you can use YMAL or GIT2consul for more configuration