How to selectively disable Eureka discovery client with Spring?

前端 未结 6 1401
一整个雨季
一整个雨季 2020-12-09 03:12

Is there a way to disable spring-boot eureka client registration based on the spring profile?

Currently I use the following annotations:

@Configurati         


        
相关标签:
6条回答
  • 2020-12-09 03:48

    You can disable eureka client in application.yml using this:

    eureka:
      client:
        enabled: false
    

    It's also for one profile

    0 讨论(0)
  • 2020-12-09 03:55

    With the latest version of Spring Cloud Finchley.SR2 if you are using the annotation @EnableDiscoveryClient you have to set all of the following properties in application.properties to disable the service registration:

    spring.cloud.service-registry.auto-registration.enabled=false
    eureka.client.enabled=false
    eureka.client.serviceUrl.registerWithEureka=false
    
    0 讨论(0)
  • 2020-12-09 03:56

    Do it like this: create some @Configuration annotated class (class body can be omitted) ex.:

    @Profile("!development")
    @Configuration
    @EnableDiscoveryClient
    public class EurekaClientConfiguration {
    }
    

    It means that this configuration file (and @EnableDiscoveryClient within) will be loaded in every profile except "developement".

    Hope that helps,

    0 讨论(0)
  • 2020-12-09 03:58

    Same issue here. You can simply put in your application property file the following configuration:

      spring:
        profiles: development
    
      eureka:
        instance:
          hostname: localhost
        client:
          registerWithEureka: false
          fetchRegistry: false
    
    0 讨论(0)
  • 2020-12-09 04:05

    There is a standard boolean spring-cloud property

    spring.cloud.discovery.enabled

    This might be better than "eureka" specific since you might be using a different provider.

    0 讨论(0)
  • 2020-12-09 04:08

    With the latest version of Spring boot, Please add this in the bootstrap.yml file

    Spring cloud version : Edgeware: SR3 and above

    spring:
      application:
        name: test
      cloud:
        service-registry:
          auto-registration:
            enabled: false
    

    This will disable eureka. To enable it, we just need to make enabled as true

    0 讨论(0)
提交回复
热议问题