新建一个SpringBoot项目eureka_server,作为注册中心,后续的其他项目,都注册在这个注册中心上面。
这里和普通springboot项目相比,主要就是需要多引入两个依赖:eureka的,spring-cloud相关的。
eureka-server依赖:
<!--eureka-server-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
springcloud依赖,在 标签外面:
<!--spring-cloud依赖-->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<spring-cloud.version>Finchley.SR2</spring-cloud.version>
在项目的启动类中,添加@EnableEurekaServer注解,将此项目启动为注册中心。
//启动为一个注册中心
@EnableEurekaServer
@SpringBootApplication
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class, args);
}
}
在配置文件中配置注册中心相关信息
server:
port: 8761
spring:
application:
name: eureka-server
eureka:
instance:
hostname: localhost
client:
register-with-eureka: false
fetch-registry: false
service-url:
defultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
解释一下:
register-with-eureka: false,是否注册到eureka服务器,由于自己就是eureka服务器,没有必要注册自身。
fetch-registry: false:
是否从eureka服务器获取注册信息,这里也没必要。
defultZone:设置eureka服务器所在地址,注册服务和查询服务都依靠这个地址。
启动项目,访问http://localhost:8761/,会看到如下画面,说明注册中心启动成功,后续当有服务注册进来时,都会在这里显示。