一、项目介绍
前景
一直想写一篇前后端分离项目的搭建教程,最近正好不是太忙,也是正好赶上轻量的创作者活动,所以就花点时间写了这篇文章。
项目简介
RuoYi基于SpringBoot、Shiro、Mybatis的权限后台管理系统,是一个非常优秀的后台管理系统,这次正好趁着这个机会,写一篇搭建的教程分享给大家,也顺便也记录下之前学习的过程。
官方文档
以下是官方的项目说明文档,有不懂的也可以去看看哦。
http://doc.ruoyi.vip/ruoyi/
二、环境准备
如果没有轻量服务器,可以用本地的虚拟机。或者现在正好轻量服务器也有活动。
可以看看下边的活动。
https://cloud.tencent.com/act/new?from=16689
硬件环境
- 服务器:轻量无忧套餐CPU: 2核 内存: 4GB 硬盘:80GB SSD云硬盘
- 操作系统:Centos7.6系统
软件环境
- 安装 jdk 1.8.0_181
- 安装 node 12.18.3
- 安装 mysql 5.7.31
- 安装 nginx 1.18.0
- 安装 maven 3.6.3
- 安装 redis 5.0
- 安装 git客户端【非必须】
三、环境安装
以下脚本是本人自己编写,仅试用于Centos7系统。
安装 jdk 1.8.0_181
执行如下脚本,选菜单1
代码语言:shell复制bash <(curl -sL https://gitee.com/upy/shell/raw/master/setup.sh)
安装完成
安装 maven 3.6.3
执行如下脚本,选菜单5
代码语言:shell复制bash <(curl -sL https://gitee.com/upy/shell/raw/master/setup.sh)
安装完成
安装 mysql 5.7.31
执行如下脚本,选菜单3
代码语言:shell复制bash <(curl -sL https://gitee.com/upy/shell/raw/master/setup.sh)
记录mysql默认密码
修改mysql的密码为123456
安装 node 12.18.3
执行如下脚本,选菜单2
代码语言:shell复制bash <(curl -sL https://gitee.com/upy/shell/raw/master/setup.sh)
安装完成
安装 nginx 1.18.0
执行如下脚本,选菜单4
代码语言:shell复制bash <(curl -sL https://gitee.com/upy/shell/raw/master/setup.sh)
安装完成
代码语言:javascript复制http://x.x.x.x/
打开ip地址,查看nginx是否安装完成,如果打不开,可以看下防火墙是不是没有关闭。
安装 redis 5.0
代码语言:javascript复制bash <(curl -sL https://gitee.com/upy/shell/raw/master/redis-install.sh)
安装完成
安装 git
安装这个主要用来在线克隆代码,非必须安装。
如果不安装的话,可以自行下载代码,通过xftp上传的服务器中,也可以自己在本地编译好前后端代码后上传编译好的代码到服务器,都是可以滴。
安装命令:
代码语言:shell复制yum install git -y
五、数据库配置
下载代码
可以自行下载后上传到服务器,也可以在线下载
执行如下命令下载代码:
代码语言:javascript复制git clone https://gitee.com/y_project/RuoYi-Vue.git
主要目的从代码中找打sql文件,导入到数据库中。
修改mysql连接信息
代码语言:javascript复制cd /root/RuoYi-Vue/ruoyi-admin/src/main/resources
vim application-druid.yml
修改图中内容
导入sql文件到数据库中
开放数据库远程链接权限
代码语言:javascript复制mysql -u root -p 123456
--授权root用户对所有数据库在任何ip都可以进行操作
grant all privileges on *.* to 'root'@'%' identified by '4Mysql@Lighthouse';
--刷新数据库权限
flush privileges;
这样使用本地工具就能连接上服务器的数据库了。注意要在防火墙放行3306端口,导入完成及时关闭3306端口
使用本地工具Navicat导入sql文件
下载好这2个sql文件。
创建数据库
运行2个sql文件,依次导入到数据库中
数据库导入完成
修改redis密码
代码语言:javascript复制cd /root/RuoYi-Vue/ruoyi-admin/src/main/resources
vim application.yml
修改完成
五、代码打包
打包后端代码
执行如下maven命令打包
代码语言:javascript复制cd RuoYi-Vue
mvn clean install -Dmaven.test.skip=true -Dcheckstyle.skip=true
进入打包后的文件夹
代码语言:shell复制cd /root/RuoYi/ruoyi-admin/target
编译好的jar包
打包前端代码
进入前端代码目录
代码语言:javascript复制cd /root/RuoYi-Vue/ruoyi-ui
编译
先安装依赖信息,再编译打包。
代码语言:javascript复制npm install
npm run build:prod
打包后的文件
复制代码到nginx路径下
代码语言:javascript复制cp -r dist /usr/local/nginx
六、部署启动
启动后端
代码语言:javascript复制cd /root/RuoYi-Vue/ruoyi-admin/target
nohup java -jar ruoyi-admin.jar &
启动完成
查看进程
启动前端
修改nginx配置
代码语言:javascript复制cd /usr/local/nginx/conf
添加反代配置
代码语言:javascript复制 location / {
root /usr/local/nginx/dist;
try_files $uri $uri/ /index.html
index index.html index.htm;
}
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8080/;
}
截图
七、测试项目
访问测试:
http://121.5.53.108/login?redirect=/index
不确定什么时候关闭,关闭的话,大家可以去体验若依官方的地址。
登录页
首页
菜单管理
基本功能都正常,搭建完成
八、参考资料
官方文档:http://doc.ruoyi.vip/ruoyi/
到这里整个搭建过程就结束了,如果有小伙伴不懂的,可以评论区留言讨论。