1、需要准备的依赖环境服务
- JDK >= 1.8 (推荐1.8版本)
- Mysql >= 5.7.0 (推荐5.7版本)
- Redis >= 3.0
- Maven >= 3.0
- NodeJS >= 10
以上安装配置不赘述
- nacos >= 1.1.0 (ruoyi-cloud >= 3.0.0需要下载nacos >= 2.x.x版本)
- sentinel >= 1.6.0
- RuoYi-Cloud >=3.0.0 (我选择的是最新的3.2.0版本)
2、nacos安装
2.1下载安装
https://github.com/alibaba/nacos/releases
windows环境下载地址:
https://github.com/alibaba/nacos/releases/download/2.0.3/nacos-server-2.0.3.zip
下载到本地之后, 解压之后得到nacos
![在这里插入图片描述](https://img-blog.csdnimg.cn/e742bc9cdbb24c578b4e6bb7f0c16a22.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
2.2 启动
nacos的管理二进制命令都是在nacos/bin
目录下面,linux系统下面是start.sh
,windows系统下面是start.cmd
-
Linux/Unix/Mac
启动命令(standalone代表着单机模式运行,非集群模式):
sh startup.sh -m standalone
如果您使用的是ubuntu系统,或者运行脚本报错提示[[符号找不到,可尝试如下运行:
bash startup.sh -m standalone
Windows
启动命令(standalone代表着单机模式运行,非集群模式):
startup.cmd -m standalone
windows环境下启动成功之后如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/0c3c3588f4d94a8a9fb75c30190ce9f0.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
浏览器console访问地址为:http://ip:port/nacos
页面如下:
登录账号:nacos
登录密码:nacos
![在这里插入图片描述](https://img-blog.csdnimg.cn/4c3c179f5c834aecb4d73c7f54ed1015.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/6236a9ec36944d7db34a8ba6730400f6.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
2.3 配置(这个暂且放到后面再讲)
3、sentinel安装启动
https://github.com/alibaba/sentinel/releases
windows环境下载地址:
https://github.com/alibaba/Sentinel/releases/download/1.8.2/sentinel-dashboard-1.8.2.jar
下载到本地之后,sentinel默认启动的端口是8080,但是8080有可能会被占用, 从而导致sentinel启动失败
两种解决方案:
- 找到运行在8080端口上的进程,kill掉这个进程
- 启动时制定一个空闲的端口,
java -jar sentinel-dashboard-1.8.2.jar --server.port=8088
windows环境下启动成功之后如下:
![在这里插入图片描述](https://img-blog.csdnimg.cn/9a78ef25d5084c788f0954221eac8cd3.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
浏览器console访问地址为:http://ip:port
页面如下:
登录账号:sentinel
登录密码:sentinel
![在这里插入图片描述](https://img-blog.csdnimg.cn/190bcd49dfc54cfab174e8e948c383cf.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/072dfe6d9a26429989db92771291af13.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
4、数据库初始化、修改配置、后台项目部署
4.1、创建数据库
ry-cloud和ry-config(这两个库是必须的)
初始化备份文件在项目RuoYi-Cloud\sql
目录下面
![在这里插入图片描述](https://img-blog.csdnimg.cn/9d4fde7cfdf14c8a8035db43009c195a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/92a2a411847245a18f7e266d94c2b9b0.png)
4.2、修改nacos数据库连接配置
nacos数据库连接配置文件在nacos安装目录下的conf目录下nacos\conf\application.properties
![在这里插入图片描述](https://img-blog.csdnimg.cn/ca1c1a25fb6a485da5e65a65bbb74b11.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
数据库初始化成功之后,修改nacos的数据库连接信息
![在这里插入图片描述](https://img-blog.csdnimg.cn/bc599a3cc3354f9988a51590a961558a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
修改内容如下:
# db mysql
spring.datasource.platform=mysql
db.num=1
# 修改数据库服务器的连接信息【服务器IP、端口、数据库名称改为ry-config(如果你修改了数据库名称,请使用你自定义的数据库名称)、用户名、密码】
db.url.0=jdbc:mysql://localhost:port/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=password
修改完成之后重启nacos,再次访问nacos的console页面, 就会看到预置的配置信息都被读取到console页面上来了。
![在这里插入图片描述](https://img-blog.csdnimg.cn/2275e1a87efb493991ac1809c142c5b0.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
4.3、修改注册到nacos的服务中的部分配置信息
这里需要需要主要是因为我们安装的nacos和sentinel、redis、mysql以及各个微服务项目都可能单独部署在不同的服务器机器上面,这里就需要通过配置文件灵活的配置各个服务的访问地址, 保证服务之间都可以正常通信。
![在这里插入图片描述](https://img-blog.csdnimg.cn/d07481468b96465089887e6ba945deea.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
遇到的问题:redis无法连接
![在这里插入图片描述](https://img-blog.csdnimg.cn/6a9e90e951fd4b10a0e81ed0342067a3.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
将nacos的配置列表中所有涉及到redis的配置信息中的host: localhost
修改为host: ip或者127.0.0.1
,同时因为我的redis设置了密码
这里修改redis的密码为我设置的密码;
![在这里插入图片描述](https://img-blog.csdnimg.cn/cd3fe94ccdd0486e864563e0e2dab7f4.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
修改完成, 点击【发布】,新的配置信息就会被更新到数据库里面。
如果修改之后还是无法访问redis, 怎么办?
修改redis的配置文件,
- 注释掉
bind 127.0.0.1
,
- 关闭redis保护模式
protected-mode no
,
- 设置redis的密码
requirepass 访问密码
之后重启redis.
其他配置文件的修改大致都跟redis类似,这里不再赘述,下面说说哪些配置信息需要修改
哪些配置信息需要改?
redis链接配置信息
需要知道redis在哪台机子上面跑着,访问的端口是啥以及链接成功之后访问数据库时的密码信息等等
![在这里插入图片描述](https://img-blog.csdnimg.cn/222ee467ed074d618e9e3e7774691610.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
mysql
需要知道数据库在哪台机子上面跑着,访问的端口是啥?访问数据库的用户名和密码信息以及需要访问的是那个数据库等等
![在这里插入图片描述](https://img-blog.csdnimg.cn/58f8488e92174e778ba3804b7c65f9d5.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
nacos
需要知道nacos在哪台机子上面跑着,访问的端口是啥?
![在这里插入图片描述](https://img-blog.csdnimg.cn/d41d5108d6ed430ead28ea47422d9016.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
4.4、项目服务模块中的需要修改关键配置信息
模块服务中主要就是涉及到服务注册到nacos,读取nacos中配置信息以及sentinel服务配置的信息需要更新(如果所有服务都在一台机器上面运行, 那不修改无所谓, 但是微服务的项目一旦服务都会被运行到不同的服务器上运行, 服务器与服务器之间可以相互通信,只需要在项目中修改这些关键服务之间的连接通信正常就可以。)
这样一说,估计大家以后再进行别的项目部署的时候都是非常类似的,一通百通。
![在这里插入图片描述](https://img-blog.csdnimg.cn/0938803152c342c1b5bfcadf854fe51e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
4.5、运行后台项目,启动后台网关服务、认证服务以及系统管理服务
![在这里插入图片描述](https://img-blog.csdnimg.cn/f03f914075da487d9e481b5d215af0e7.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
至此后台项目就部署完成了
5、前端项目部署
前端项目在RuoYi-Cloud\ruoyi-ui
目录下
![在这里插入图片描述](https://img-blog.csdnimg.cn/cf9719cd35a34a3aaa0f2baa12536720.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
注意:前端项目运行需要先在机器上面安装nodeJS服务以及npm包管理工具(安装nodeJS会顺带安装npm)
进入到ruoyi-ui目录下, 打开命令行,执行npm install
命令即可
npm install
![在这里插入图片描述](https://img-blog.csdnimg.cn/9671153729ea42878ebdfdbd50a0c632.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
等到依赖包全部都安装完成,在执行命令npm run dev
npm run dev
![在这里插入图片描述](https://img-blog.csdnimg.cn/b492f2c500fa40bfad0532db78dd34cd.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
还有前端项目开发阶段,如果后台的网关服务的端口进行了变更, 需要同步修改前端项目对接的后台服务端口后重启前端项目即可。
![在这里插入图片描述](https://img-blog.csdnimg.cn/08fdcaef3ce94d889c6edce5608c085f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
6、项目运行效果
![在这里插入图片描述](https://img-blog.csdnimg.cn/5ad9f95ccbb94ea7bc525f73941bdf8d.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/d01872a580884440a5ff772ace9140df.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5auj5aSc5p2l,size_20,color_FFFFFF,t_70,g_se,x_16)
好了,可以开始二次开发了,抓紧码起来!!!