前提:

安装工具:  intellij idea(其他可修改配置文件的工具都可以)

安装服务:  mysql  redis  nginx  tomcat

mac文件路径: /Users/anan/prd

liunx文件路径: /opt/

演示:

电脑 mac           安装服务  jkd

3台vm虚拟机centos7

后端 172.16.41.111    centos1        安装服务   mysql   redis  jdk  mvn
后端 172.16.41.112   centos2       安装服务   tomcat
前端 172.16.41.113  centos3       安装服务    nginx  node

1.下载源代码

#创建存放目录
mkdir /Users/anan/prd
cd  /Users/anan/prd
#git克隆源代码
#若依官网  http://www.ruoyi.vip/  
#源码地址选择 RuoYi-Vue 前端分享版
#克隆下载处复制链接
#mac 终端 克隆源代码
git clone  https://gitee.com/y_project/RuoYi-Vue.git

2.查看目录结构

3.修改配置文件,根据自己的服务配置

application.yml 

application-druid.yml 

logback.xml   修改日志配置

4. intellij idea上测试启动

5.前端项目打包

前端文件ruoyi-ui,打成tar包,上传至前端部署 centos3服务器
#运行 npm install  下载依赖
npm install  --unsafe-perm  --registry=https://registry.npm.taobao.org
#打包生产环境的包
npm run build:prod
#打包完成后生成dist文件
#查👀
[root@centos3 ruoyi-ui]# cd dist/
[root@centos3 dist]# ls
favicon.ico  html  index.html  index.html.gz  robots.txt  static
前端打包完成

6.后端项目打包

后端文件 RuoYi-Vue 打成tar包存放后端 centos1 centos2服务器
#服务器解压
unzip RuoYi-Vue.zip  -d  /opt/pro/
cd pro/RuoYi-Vue/
#查看maven
mvn -version
#编译打包
mvn package
#启动
cd /opt/pro/RuoYi-Vue/ruoyi-admin/
nohup  java -jar ruoyi-quartz-3.8.4.jar &
#查看nohup
tail -f nohup

7.前后端部署

#修改nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
upstream ruoyi {
   server 172.16.41.111:8080  weight=6;  #后端服务器ip
   server 172.16.41.112:8080  weight=4;  #后端服务器ip
    }
server {
        listen       8888;
        server_name  localhost;

        location / {
            root   /opt/ruoyi-ui/dist; #前端服务
            index  index.html index.htm;
      }

        location /prod-api/ {   #后端连接目录,所有请求被转发到后端服务器的这个路径上
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            client_max_body_size 10m;    #允许客户端请求的最大单文件字节数
            client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数,
            proxy_connect_timeout 90;  #nginx跟后端服务器连接超时时间(代理连接超时)
            proxy_send_timeout 90;     #后端服务器数据回传时间(代理发送超时)
            proxy_read_timeout 90;    #连接成功后,后端服务器响应时间(代理接收超时)
            proxy_buffer_size 4k;    #设置代理服务器(nginx)保存用户头信息的缓冲区大小
            proxy_buffers 4 32k;   #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
            proxy_busy_buffers_size 64k;    #高负荷下缓冲大小(proxy_buffers*2)
            proxy_temp_file_write_size 64k;
            proxy_pass http://ruoyi/;
     }
    }

#重启nginx
nginx -t
nginx -s reload
#测试访问
172.16.41.113:8080

8.也可以用tomcat发布

#修改配置文件
vi /opt/pro/RuoYi-Vue/ruoyi-admin/pom.xml  
     10     <modelVersion>4.0.0</modelVersion>
     11     <packaging>war</packaging>
     12     <artifactId>ruoyi-admin</artifactId>
vi /opt/pro/RuoYi-Vue/ruoyi-framework/pom.xml 
     20         <!-- SpringBoot Web容器 -->
     21          <dependency>
     22             <groupId>org.springframework.boot</groupId>
     23             <artifactId>spring-boot-starter-web</artifactId>
     24         </dependency>
#增加配置文件
cd /opt/pro/RuoYi-Vue/ruoyi-admin/src/main/java/com/ruoyi

vim  SpringBootstartApplication.java 
package com.ruoyi;

import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

public class SpringBootstartApplication extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources( RuoYiApplication.class );
    }
}
#清除之前打的包,包括上边打的jar包,所以可以给jar包备份
mvn clean
#打war包
mvn package
#中间会有报java堆内存错误,解决办法
export MAVEN_OPTS="-Xmx2048m -XX:MaxPermSize=128m"
#打好的jar包放在tomcat
cp /opt/pro/RuoYi-Vue/ruoyi-admin/target/ruoyi-admin.war  /opt/apache-tomcat-8.5.83/webapps
#启动tomcat
/opt/apache-tomcat-8.5.83/bin/startup.sh
#访问
172.16.41.112:8080/index
可以访问后台
#想访问前端,用nginx代理tomcat

Logo

快速构建 Web 应用程序

更多推荐