如何在服务器部署若依项目

一、下载若依项目

网址:若依网址

  • 阿昌这次使用部署的是若依前后端分离版本为例子部署

若依架构分析 若依框架部署_若依架构分析

  • 去github上下载若依

若依架构分析 若依框架部署_springboot_02

通过git pull <上面的git地址>下载若依

二、在本地修改对应若依配置

  • 用idea打开若依项目
  • 目录结构

若依架构分析 若依框架部署_nginx_03

  • 配置文件

ruoyi-admin/src/main/resources

若依架构分析 若依框架部署_服务器部署_04

1、logback.xml日志配置

若依架构分析 若依框架部署_nginx_05

  • 修改日志输出编码格式,使用UTF-8

若依架构分析 若依框架部署_若依_06

若依架构分析 若依框架部署_若依架构分析_07

若依架构分析 若依框架部署_若依_08


2、application.yml项目配置

  • 修改启动端口

若依架构分析 若依框架部署_nginx_09

  • redis配置

若依架构分析 若依框架部署_nginx_10

  • token加密规则

若依架构分析 若依框架部署_springboot_11


3、application-druid.yml数据源配置

若依架构分析 若依框架部署_若依_12

  • 生成对应sql数据库

若依架构分析 若依框架部署_服务器部署_13


4、测试启动项目

若依架构分析 若依框架部署_若依架构分析_14


三、前端项目打包

  • 用Vscode打开ruoyi-ui

若依架构分析 若依框架部署_springboot_15

  • 运行npm install下载依赖

可能会出现的错误

发现运行不了npm install

若依架构分析 若依框架部署_springboot_16

  • 解决方法
  • 通过yarn install安装

若依架构分析 若依框架部署_若依架构分析_17


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

若依架构分析 若依框架部署_若依_18

  • 打包完成

若依架构分析 若依框架部署_springboot_19

  • 生成dist文件夹

若依架构分析 若依框架部署_若依_20

  • 目录结构

若依架构分析 若依框架部署_nginx_21

到此前端项目就算打包完成!!!


四、后端项目打包

  • 打开资源路径文件夹

若依架构分析 若依框架部署_若依架构分析_22

  • 呼出命令行

若依架构分析 若依框架部署_nginx_23

  • 通过命令行mvn package打包

若依架构分析 若依框架部署_若依_24

  • 生成jar文件

若依架构分析 若依框架部署_服务器部署_25

到此后端打包完成!!!


五、部署服务器

  • 前提保证你服务器有nginx

nginx在linux安装教学

1、部署前端项目

上传到192.168.109.101服务器上

  • 将刚刚打包好的dist文件夹放置在服务器的一个位置

这里阿昌就放在workspace下面

若依架构分析 若依框架部署_springboot_26

  • 会发现一个问题,如何启动这个前端文件????

  • 这里我们使用nginx来转发,阿昌使用的是1.17.10的版本
  • 配置nginx配置文件

2、配置nginx


  • 配置权限

若依架构分析 若依框架部署_服务器部署_27

user  root;
  • 配置跳转前端路径
location / {
            root   /workspace/dist;
            index  index.html index.htm;
        }

若依架构分析 若依框架部署_服务器部署_28

  • 保存,通过: wq
  • 重启nginx

在/sbin目录下

./nginx -s -reload   #重启nginx
  • 访问前端地址

http://192.168.109.101:80/

若依架构分析 若依框架部署_nginx_29

  • 发现出404错误
  • F12打开看请求情况

若依架构分析 若依框架部署_springboot_30

  • 发现请求的是/prod-api/**的路径
  • 再次配置nginx转发规则
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.109.102:8080/;

        }

若依架构分析 若依框架部署_nginx_31


3、部署后端项目

上传在192.168.109.102服务器上

  • 将刚刚的jar文件上传的服务器上

若依架构分析 若依框架部署_若依_32

  • 通过 java -jar <你的项目名>启动项目

若依架构分析 若依框架部署_nginx_33


4、测试

前后端打通

若依架构分析 若依框架部署_nginx_34

到此前后端项目服务器部署完成!!!!


5、小集群部署

将同样的后端jar包上传到192.168.102服务器上

若依架构分析 若依框架部署_springboot_35

  • 配置nginx让他负载均衡转发
upstream ruoyi{
        server 192.168.109.102:8080 weight=5;
        server 192.168.109.103:8080 weight=3;
    }


    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   /workspace/dist;
            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://ruoyi/;

        }

若依架构分析 若依框架部署_springboot_36

  • 重启nginx

在sbin目录下

./nginx -s -reload

6、测试负载均衡

  • 访问之前配置的日志地址

若依架构分析 若依框架部署_nginx_37

若依架构分析 若依框架部署_若依_38

  • 测试

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

  • 故意输错验证码,查看负载均衡情况

若依架构分析 若依框架部署_若依架构分析_39

至此小集群配置完成!!!!!!!!!!!