项目部署
部署准备
1.搭建三台服务器
这次是集群环境的部署项目,配置好一个linux系统后(主要安装有如下软件:redis,mysql,nginx,node,tomcat),通过克隆,然后修改网络地址,并且打开
具体可以参考如何克隆虚拟机操作系统

2.下载若依项目
2.1.项目的地址下载地址:
https://gitee.com/y_project/RuoYi-Vue
2.2.上码云上克隆开源项目

2.3.创建一个文件夹project,克隆下来,并且用idea打开


2.4.修改配置文件连接的数据库为自己的数据库

2.5修改配置文件连接的缓存为自己的缓存

修改日志存放路径和字符集编码

启动项目

在三个服务器的根目录中创建文件夹存放项目文件
mkdir workspaces
前端项目打包
用Vscode打开ruoyi-ui

打开控制台

- 运行
npm install下载依赖

之后打生产环境的包,通过npm run build:prod

生成dist文件

把dist文件压缩并上传到/root/workspaces
把dist文件进行解压
unzip dist.zip

分别在准备部署后端项目的的服务器/root/workspaces/下上传后端文件,


分别在两个服务器中打包后端项目(jar包)
cd /root/workspaces/ruoyi
mvn package

打包完成
进入到后台模块,会看到生成了target文件夹,进入文件夹会发现有一个jar包生成

复制一份jar包到/root/workspaces/ruoyi下
cp ruoyi-admin.jar /root/workspaces/ruoyi
cd /root/workspaces/ruoyi

前端配置
在/root/workspaces目录下创建ruoyi-ui文件夹.并把dist文件夹移动到ruoyi-ui下
cd /root/workspaces
mkdir ruoyi-ui
mv dist ruoyi-ui/
配置nginx.conf
修改/usr/local/nginx/conf下的nginx.conf配置
vi /usr/local/nginx/conf/nginx.conf

把前端项目打包部署的dist文件夹的路径/root/workspaces/ruoyi-ui/dist配置到该文件中

修改配置文件后,重新启动nginx
查看端口被占用情况,并杀掉进程
lsof -i:80
kill -9 7019 7112

修改配置文件后,重新启动nginx
cd /usr/local/nginx/sbin
./nginx

用网页访问nginx

jar包部署后台
进入到存放jar包的位置
cd /root/workspaces/ruoyi/
后端jar包部署项目
nohup java -jar ruoyi-admin.jar &

访问系统,依然是404,查看控制台,可以看到有一个转发路径需要配置
所以需要配置nginx.conf,把转发路径给配置
编辑nginx.conf文件,也可以用其他软件(Vscode)打开直接编辑
vi /usr/local/nginx/conf/nginx.conf

添加转发地址到后台项目的地址
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://192.168.0.183:8080/;
}

保存并重新上传

修改配置文件后,重新启动nginx,再次访问

小集群部署
另一个服务器部署同样的后端项目,

配置nginx让他负载均衡转发

重启nginx
测试负载均衡
进入配置日志的地址
cd /Users/phl/log

通过tail -f sys-info.log实时监测两服务器服务器实例的日志情况
tail -f sys-info.log

验证成功
war包部署后台
查看进程,并关闭进程
ps -aux | grep java
kill -9 5392


打开idea,修改若依项目,war包的部署方式,修改以下三个地方



打开idea的控制台
清理target
mvn clean
打war包
mvn package
完成后,target包下会生成war包

找到war包的位置.把war包分别上传到部署后台项目的环境中


进入到tomcat的webapps目录,并拷贝war包到该目录下
cd /usr/local/tomcat/apache-tomcat-8.5.55/webapps
cp /root/workspaces/ruoyi/ruoyi-admin.war ./
解压war包
unzip ruoyi-admin.war -d /usr/local/tomcat/apache-tomcat-8.5.55/webapps/ruoyi-admin
在部署前端项目的服务中,修改配置文件nginx.conf,弄一个集群


重启nginx
/usr/local/nginx/sbin/nginx -s reload
测试负载均衡
cd /Users/phl/log
tail -f sys-info.log

验证成功

项目部署总结
1.把前端项目通过npm run build:prod打包,生成dist文件
2.在服务器中创建存放项目的文件夹,把dist文件上传到该文件夹下,并解压
3.修改部署前端项目的服务器中nginx.conf文件,将nginx默认访问的地址修改为存放dist文件夹的路径,修改用户为root用户,放在出现权限问题,修改配置文件后,重新启动nginx
4.将后台项目达成jar包或者war包,建议达成jar包,上传到对应的服务器文件夹下,
如果是jar包,则需要在存放jar包的路径中,输入命令nohup java -jar ruoyi-admin.jar &
如果是war包,则需要把该war包加压,并且放到tomcat的webapps包下
5.还需要配置nginx.conf,把后台系统的地址配置为转发路径,如果是集群,那么需要添加服务实例以及配置负载均衡
6.重新启动nginx,再查看部署后台项目的日志,即可查看是否实现了负载均衡