如何使用alibaba的nacos为springboot微服务配置注册中心
1 登录官网下载nacos并且解压,注意springboot版本下载对应的nacos
2 因为每一个微服务都要注册创建一个公共的包commons并在每一个微服务中pom文件中引入commons
3 在commons包的pom文件中引入坐标
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
4 打开bin文件夹运行startup.cmd如下图
启动如果报错:java.io.IOException: java.lang.IllegalArgumentException: db.num is null
解决如下:
打开application.properties文件修改取消db.num=1的注释再次运行
出现如下错误:Caused by: java.lang.RuntimeException: [db-load-error]load jdbc.properties error
解决步骤:1 用nysql客户端连接mysql创建如下数据库
2 打开nacos文件下下的E:\nacos-server-2.0.0\nacos\conf\nacos-mysql.sql执行语句
3 将nacos下的E:\nacos-server-2.0.0\nacos\conf\application.properties修改如下所示
又会报如下错误:org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
打开启动配置文件修改模式为standalone
重新启动:
找到你要注册的微服务的配置文件application.properties配置如下:spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
最后找到微服务启动程序添加注解@EnableDiscoveryClient
最后启动你的微服务在注册中心查看是否有服务注册进来,同时需要为微服务添加服务配置名称spring.application.name=serviceName
至此为微服务添加注册中心配置完成