若依(Ruoyi)框架中如何使用Nacos?
- 若依框架的微服务版项目启动
- Nacos下载和启动
- Nacos服务注册和配置
接下来,我们可以查看若依框架微服务版如何使用Nacos?
前提
- JDK >= 1.8 (推荐1.8版本)
- Mysql >= 5.7.0 (推荐5.7版本)\Redis >= 3.0
- Maven >= 3.0
- Node >= 12
- nacos >= 2.0.4 (ruoyi-cloud < 3.0 需要下载nacos >= 1.4.x版本)
- 已下载若依微服务版,并解压运行:https://gitee.com/y_project/RuoYi-Cloud
- naocs已连接微服务配置数据库:ry-config。
开始
Nacos配置
启动Nacos,再启动ruoyi的微服务。可以看到,配置管理列表有很多配置信息:
可以知道Nacos的配置格式为:命名空间:默认空间public + 默认分组DEFAULT_GROUP_ 新建DataId(${prefix}-${spring.profiles.active}.${file-extension} , 微服务名称-环境.数据格式)。
查看到微服务配置的表格,与Nacos的根目录{home}/conf/mysql-schema.sql
一致。所以,只要配置到微服务数据库,即可使用这些配置。与nacos相关的配置会在后面继续分析。
微服务注册进Nacos
启动各个微服务后,服务管理会加入naocs的服务列表:
根据学习到nacos服务配置中心。各个微服务需要加入nacos,需要配置为服务配置naocs地址。配置后,运行服务则可以加入naocs服务列表。
server:port: 9001
spring:application:name: nacos-payment-providercloud:nacos:discovery:server-addr: localhost:8848 # 配置Nacos地址
可以看到,各个微服务的bootstrap
关于nacos的配置。
# ruoyi-gateway(网关)
# Tomcat
server:port: 8080# Spring
spring: application:# 应用名称name: ruoyi-gatewayprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:8848config:# 配置中心地址server-addr: 127.0.0.1:8848# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}sentinel:# 取消控制台懒加载eager: truetransport:# 控制台地址dashboard: 127.0.0.1:8718# nacos配置持久化datasource:ds1:nacos:server-addr: 127.0.0.1:8848dataId: sentinel-ruoyi-gatewaygroupId: DEFAULT_GROUPdata-type: jsonrule-type: gw-flow# ruoyi-auth 认证授权中心
# Tomcat
server: port: 9200# Spring
spring: application:# 应用名称name: ruoyi-authprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:8848config:# 配置中心地址server-addr: 127.0.0.1:8848# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}# ruoyi-system 系统模块
# Tomcat
server:port: 9201# Spring
spring: application:# 应用名称name: ruoyi-systemprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:8848config:# 配置中心地址server-addr: 127.0.0.1:8848# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}# ruoyi-job 定时任务模块
# Tomcat
server:port: 9203# Spring
spring: application:# 应用名称name: ruoyi-jobprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:8848config:# 配置中心地址server-addr: 127.0.0.1:8848# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}# ruoyi-monitor 监控中心启动成功
# Tomcat
server:port: 9100# Spring
spring: application:# 应用名称name: ruoyi-monitorprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:8848config:# 配置中心地址server-addr: 127.0.0.1:8848# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}# ruoyi-gen 代码模块生成启动
# Tomcat
server:port: 9202# Spring
spring: application:# 应用名称name: ruoyi-genprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:8848config:# 配置中心地址server-addr: 127.0.0.1:8848# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}# ruoyi-file 文件模块服务
# Tomcat
server:port: 9300# Spring
spring: application:# 应用名称name: ruoyi-fileprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: 127.0.0.1:8848config:# 配置中心地址server-addr: 127.0.0.1:8848# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
这里所有的环境都是dev。各个模块对应的配置文件如下:
模块名称 | nacos配置文件名称 |
---|---|
通用配置(每个模块的bootstrap文件的:spring.cloud.nacos.discovery.shared-configs属性,注册了共享配置) | application-dev.yml |
网关模块(ruoyi-gateway) | ruoyi-gateway-dev.yml |
认证中心(ruoyi-auth) | ruoyi-auth-dev.yml |
监控中心(ruoyi-monitor) | ruoyi-monitor-dev.yml |
系统模块(ruoyi-system) | ruoyi-system-dev.yml |
代码生成(ruoyi-gen) | ruoyi-gen-dev.yml |
定时任务(ruoyi-job) | ruoyi-job-dev.yml |
文件服务(ruoyi-file) | ruoyi-file-dev.yml |
网关模块(ruoyi-gateway , 网关模块spirng.cloud.sentinel.datasource.ds1.nacos.dataId,注册了该配置文件) | sentinel-ruoyi-gateway |
此时,只要启动nacos,即可成功加入和连接服务配置。