【发布时间】:2018-03-31 15:05:03
【问题描述】:
我有几个微服务,它们都在 Eureka (Discovery Client) 中注册。最近我为所有微服务启用了 Swagger2 (SpringFox)。
一旦我启用了 swagger,我的微服务就开始作为“Uknown”服务注册到 Eureka,并使用默认的 8080 端口注册。
我的应用程序类是这样的。
@SpringBootApplication
@EnableDiscoveryClient
@EnableSwagger2
public class Application {
private static final Logger LOG = LoggerFactory.getLogger(CaseApplication.class);
public static void main(String[] args) {
LOG.debug("Bootstrapping Case Service");
SpringApplication.run(Application.class, args);
}
@Bean
public Docket caseApi() {
return new Docket(DocumentationType.SWAGGER_2)
.groupName("Audit")
.apiInfo(apiInfo())
.select()
.paths(regex("/app.*"))
.build();
}
@Bean
public UiConfiguration uiConfig() {
return new UiConfiguration("validator", UiConfiguration.Constants.NO_SUBMIT_METHODS);
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Application Service")
.description("Application Microservice API Documentation")
.version("1.0")
.build();
}
}
我尝试将我的 Eureka 配置从 application.yml 移动到 bootstrap.yml。但如果我移动我的功能区客户端,则无法获取应用程序实例和 Eureka 注册表。
我们将不胜感激。
【问题讨论】:
标签: spring-boot swagger netflix-eureka springfox netflix-ribbon