一、创建eureka-server
1.新建一个maven的空工程,创建完成后删除maven空工程的src文件,在该工程下新建一个maven空model,也是删除src文件。
2.在eureka的model中,创建springboot的model,选择添加eureka-server依赖。
注意:这是新建springboot的model时默认的地址,如果不修改这个地址会导致新建的eureka-server的model覆盖掉eureka-01的这个model,所以这个路径需要手动更改。
更改后
点击finish
3.修改pom.xml文件中的springboot版本号(为了对应springcloud的版本号),在springcloud中不同的版本号是不兼容的,本项目使用springcloud的Hoxton.SR12版本,对应到springboot的2.3.12版本。
修改springcloud的版本号为:Hoxton.SR12
详细pom.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.12.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.it</groupId>
<artifactId>eureka-server</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR12</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<!--依赖管理 只是管理版本号以及子模块的依赖 -->
<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>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
4.重命名eureka-server的model下的resources下的application.properties文件,命名为application.yml文件。编写代码如下
server:
port: 8761 #eureka的默认端口
spring:
application:
name: eureka-server #应用名称
5. 进入main目录下的主函数启动类,加上EnableEurekaServer注解
package com.it;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@SpringBootApplication
@EnableEurekaServer //开启eureka注册中心的功能
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class, args);
}
}
6.点击运行此主函数,如果出现如下语句,表示运行成功
7.访问localhost:8761,查看是否可以进入eureka网页
二、创建eureka-client-a
1.选择springboot的web依赖,以及eureka-client的依赖
2.修改pom.xml文件,方法同eureka-server修改的方法一样
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.12.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.it</groupId>
<artifactId>eureka-client-a</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR12</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<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>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
3.重命名application.properties文件为application.yml文件,编写内容
server:
port: 8080 #客户端的端口没有要求
spring:
application:
name: eureka-client-a
#注册
eureka:
client:
service-url: #注册地址
defaultZone: http://localhost:8761/eureka
4.在主函数类中添加注解
package com.it;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
@SpringBootApplication
@EnableEurekaClient //开启客户端的功能
public class EurekaClientAApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaClientAApplication.class, args);
}
}
5.启动主函数
如下图表示启动成功
6.刷新刚才进入的网站
三、创建eureka-client-b
步骤同创建eureka-client-a相同,客户端端口命名为8081,运行项目,如下如所示表示启动成功。
四、在一个客户端里面启动两个端口
1.复制eureka-client-a的配置文件
2.修改复制过来的配置文件
3.直接运行该配置文件
4.运行结果
eureka的第一个实例演示完毕