由于项目中使用到Eureka注册中心,为了便于本地自行测试,在个人服务器上搭建Eureka注册中心。本教程基于Docker构建Eureka-Server。
二、 创建Eureka-Server注册中心工程
代码已上传gitee,开箱即用:https://gitee.com/Xiaoxinnolabi/my-eureka-server 2.1 创建基于Maven工程
IDEA相关创建基于Maven工程,这里就不赘述了。
2.2 引入相关依赖主要是引入了:SpringBootStarter、SpringCloudStarterEurekaServer
pom配置如下:
2.3 启动类4.0.0 org.xiaoxinnolabi my-eureka-server 1.0-SNAPSHOT 8 8 org.springframework.boot spring-boot-starter-parent 1.5.4.RELEASE org.springframework.cloud spring-cloud-dependencies Dalston.SR1 pom import org.springframework.cloud spring-cloud-starter-eureka-server 1.4.7.RELEASE org.springframework.boot spring-boot-maven-plugin
@SpringBootApplication
@EnableEurekaServer
public class MyEurekaServer {
public static void main(String[] args) {
SpringApplication.run(MyEurekaServer.class, args);
}
}
2.4 配置参数
这里配置注册中心端口为:8002,可根据自己需要修改端口。
server:
port: 8002
eureka:
instance:
hostname: 127.0.0.1
prefer-ip-address: true
client:
register-with-eureka: false
fetch-registry: false
service-url:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
spring:
application:
name: my-eureka-server
2.5 本地测试
2.5.1 启动Eureka-Server
启动Eureka-Server,出现如下即为启动成功:
2022-03-03 15:02:41.733 INFO 22608 --- [ Thread-24] e.s.EurekaServerInitializerConfiguration : Started Eureka Server 2022-03-03 15:02:41.777 INFO 22608 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8002 (http) 2022-03-03 15:02:41.778 INFO 22608 --- [ main] .s.c.n.e.s.EurekaAutoServiceRegistration : Updating port to 8002 2022-03-03 15:02:41.783 INFO 22608 --- [ main] org.xiaoxinnolabi.server.MyEurekaServer : Started MyEurekaServer in 7.076 seconds (JVM running for 8.186)
浏览器访问:http://localhost:8002/
2.5.2 Client端
这里使用需要Eureka-Server的项目,修改其配置如下:
defaultZone: http://127.0.0.1:8002/eureka/
2.5.3 浏览器查看服务是否注册 三、 打包发布 3.1 通过Maven打包jar 3.2 Dockerfile
FROM java:8 VOLUME /tmp ADD my-eureka-server-1.0-SNAPSHOT.jar my-eureka-server.jar EXPOSE 8002 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/my-eureka-server.jar"]3.3 创建Docker images
jar文件与Dockerfile上传服务器,并在目录下,执行以下代码:
(注意当前所在目录为jar与Dockerfile文件所在目录,以及末尾的. )
docker build -t mynew/myeurekaserver .3.4 docker run
docker run -d --restart=always --name myeureka -e "JAVA_OPTS=-Xms256m -Xmx256m" -p 8002:8002 mynew/myeurekaserver
解释如下:
docker run ##后台运行容器 -d ##Docker重启 容器也重启 --restart=always ##容器名 --name myeureka ##相关参数 -e "JAVA_OPTS=-Xms256m -Xmx256m" ##映射端口 -p 8002:8002 ##镜像 mynew/myeurekaserver
3.5 查看运行情况
docker ps -a docker logs myeureka
3.6 项目测试
修改项目eureka相关配置
defaultZone: http://服务器IP:8002/eureka/
运行项目,在http://服务器IP:8002/ 查看是否有服务注册。



