天天看点

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

 场景

若依微服务版RuoYi-Cloud,基于Spring Boot、Spring Cloud & Alibaba、OAuth2的前后端分离的后台管理系统。

RuoYi-Cloud 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring Cloud & Alibaba、OAuth2、Vue、Element-UI),

内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源。

官方文档地址

https://doc.ruoyi.vip/ruoyi-cloud/

之前介绍过若依前后端分离版本地搭建开发环境并运行项目的教程:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/108465662

微服务版技术选型

采用前后端分离的模式,微服务版本前端(基于 RuoYi-Vue)。

后端采用Spring Boot、Spring Cloud & Alibaba。

注册中心、配置中心选型Nacos,权限认证使用Redis。

流量控制框架选型Sentinel。

系统模块

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

架构图

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

注:

博客:

https://blog.csdn.net/badao_liumang_qizhi

关注公众号

霸道的程序猿

获取编程相关电子书、教程推送与免费下载。

实现

前期准备工作

1.电脑上JDK 、Maven、Mysql、Node、IDEA、Git这些基本的开发环境必备已经安装完成。

JDK >= 1.8 (推荐1.8版本)

Mysql >= 5.5.0 (推荐5.7版本)

Redis >= 3.0

Maven >= 3.0

Node >= 10

nacos >= 1.1.0

2.项目需要连接Redis,所以需要在本机安装Redis服务端:

Windows中Redis的下载安装与修改密码并启动:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/107486313

3.项目需要Nacos并需要持久化到Mysql数据库。

Nacos简介、下载与配置持久化到Mysql:

https://blog.csdn.net/badao_liumang_qizhi/article/details/109356152

注意这里的持久化算连接的数据库是Nacos所带的初始化的数据库,这里需要连接若依的数据库,所以只需要在本地配置好Nacos,等待若依的数据库新建完成再连接若依的数据库。

拉取项目代码

项目地址:

https://gitee.com/y_project/RuoYi-Cloud

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

将代码从码云克隆到本地。然后使用IDEA打开,项目目录如下

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

初始化数据库

在上面下载的源码的sql文件夹下有三个sql文件

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

打开Navicat连接本地Mysql数据库

新建数据库ry-cloud,然后在此数据库下执行ry_20200924.sql和quartz.sql这两个sql文件。

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

上面的数据是系统运行时的一些基础数据。

然后再新建数据库ry-config,在此数据库下执行ry_config_20200924.sql这个sql文件。

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

这个数据库就是前面nacos进行数据持久化到Mysql数据库的数据库。

配置Nacos持久化到数据库

来到Nacos的解压目录下的conf下的application.properties文件中,将连接到外置本地数据库的代码去掉注释并修改为

自己的数据库和用户名和密码

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

修改的代码内容

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现
spring.datasource.platform=mysql

### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456      
若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

然后参照上面的博客启动Nacos

但是在执行若依的ry_config的sql文件时并没有在users表中添加默认的nacos的用户,所以新建一个数据库nacos_config,并执行Nacos安装目录下

的conf下的nacos-mysql.sql文件

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

这样你就能获取到Nacos的默认的用户名和密码。

将其手动复制到前面若依自带的sql导入的ry-config数据库中的users表中

name:1

password:$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu

enabled:1

这样就能登录Nacos的控制台并修改系统相关配置文件的连接数据库的配置文件。

通过Nacos配置连接数据库

前面修改完nacos的conf下的aplication.properties中的连接外置数据库的操作之后,回到上一级的bin下,将startup.cmd中修改为单点模式。

具体操作可以参照上面的博客。

然后启动nacos,打来浏览器输入:

http://localhost:8848/nacos

登录的用户名和密码都为nacos

登录成功之后

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

此时项目中的所有的配置文件都会显示,然后从上往下挨个编辑,把设计到连接Mysql和Redis的所有地方,改为自己对应的用户名和密码。

以网关的配置文件ruoyi-gateway-dev.yml为例

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现
将redis改为自己的端口和密码,点击发布即可。     
   
      
同样的以认证的配置文件ruoyi-auth-dev.yml     
   
      
若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现
将redis和mysql都修改为自己所对应的。     
   
      

后端项目启动  

在启动后端项目之前,你需要本地启动Redis服务端,以及Nacos

然后在IDEA中找到

ruoyi-gateway下的启动类RuoYiGatewayApplication启动

ruoyi-auth下的启动类RuoYiAuthApplication启动

ruoyi-modules下的ruoyi-system下的RuoYiSystemApplication并启动

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

如果这三个模块都没有报错则后端启动成功

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

并且可以在Nacos中发现这三个服务

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

前端项目启动

前端项目的位置在ruoyi-ui下

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

右击此项目-Open in Terminal,输入

npm install      

安装项目依赖,然后

npm run dev      

运行前端项目

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

默认端口应该是80端口,这里80端口被占用,所以运行在了81端口

打开浏览器输入实际运行时输出的端口

http://localhost:81/

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

输入验证码点击登录

若依微服务版手把手教你本地搭建环境并运行前后端项目 场景实现

至此微服务版开发环境部署成功。