SpringCloud中Eureka如何进行服务发布?
1、现在已经成功的实现了Eureka编写,但是在实际的运行之中,需要将Eureka发布到具体的服务器上执行,这样就需要对项目进行打包处理,同样在进行打包处理的时候也必须考虑到项目的各种环境:开发(dev),测试(beta)、生产(product)。下面也将基于这样的方式进行Eureka项目打包操作。

2、本次的打包处理将基于yml配置文件完成:
从microcloud-eureka-7003复制一个项目,重命名为microcloud-eureka-server。

3、【microcloud-eureka-server】修改application.yml配置文件:
spring:
profiles:
active:
- dev-7001
---
spring:
profiles: dev-7001
application:
name: microcloud-eureka-7002
server:
port: 7002
eureka:
instance: #eureka实例定义
hostname: eureka-7002.com #设置清理的间隔时间,默认这个时间使用的毫秒单单位(默认是60秒)
client: #客户端进行Eureka注册的配置
service-url:
defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka,http://eureka:eureka@eureka-7003.com:7003/eureka
register-with-eureka: false #当前的微服务不注册到eureka之中
fetch-registry: false
server:
enable-self-preservation: false #是否要设置成保护模式
eviction-interval-timer-in-ms: 60000 #不通过eureka获取注册信息
security:
user:
name: eureka
password: eureka
---
spring:
profiles: dev-7002
application:
name: microcloud-eureka-7002
server:
port: 7002
eureka:
instance: #eureka实例定义
hostname: eureka-7002.com #设置清理的间隔时间,默认这个时间使用的毫秒单单位(默认是60秒)
client: #客户端进行Eureka注册的配置
service-url:
defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka,http://eureka:eureka@eureka-7003.com:7003/eureka
register-with-eureka: false #当前的微服务不注册到eureka之中
fetch-registry: false
server:
enable-self-preservation: false #是否要设置成保护模式
eviction-interval-timer-in-ms: 60000 #不通过eureka获取注册信息
security:
user:
name: eureka
password: eureka
---
spring:
profiles: dev-7003
application:
name: microcloud-eureka-7003
server:
port: 7003
eureka:
instance: #eureka实例定义
hostname: eureka-7003.com #设置清理的间隔时间,默认这个时间使用的毫秒单单位(默认是60秒)
client: #客户端进行Eureka注册的配置
service-url:
defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka,http://eureka:eureka@eureka-7002.com:7002/eureka
register-with-eureka: false #当前的微服务不注册到eureka之中
fetch-registry: false
server:
enable-self-preservation: false #是否要设置成保护模式
eviction-interval-timer-in-ms: 60000 #不通过eureka获取注册信息
security:
user:
name: eureka
password: eureka

4、【microcloud-eureka-server】添加一个打包的处理插件,修改pom.xml配置文件:
<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>microcloud</artifactId>
<groupId>com.gwolf</groupId>
<version>1.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.gwolf</groupId>
<artifactId>microcloud-eureka-server</artifactId>
<packaging>jar </packaging>
<name>microcloud-eureka-server</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
</dependencies>
<build>
<finalName>microcloud-eureka-ser</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.5.8.RELEASE</version>
<configuration>
<mainClass>com.gwolf.microcloud.Eureka_StartSpringCloudApplication</mainClass>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

5、执行maven:clean install package

6、随后就可以在项目的目录之中发现生成的“microcloud-eureka-server.jar”文件。

7、采用默认的方式执行microcloud-eureka-server.jar,那么此时将运行在7001端口上。
