一、部署前工作

在阿里云服务器上安装centos7

centos7以上应该都可以(我自己的是7)

可以通过命令查看自己的版本

cat /etc/redhat-release 查看CentOS版本

宝塔上传大 mysql 宝塔数据库导入50m限制_宝塔上传大 mysql

 

随后安装好以下软件(以下是我安装的版本,可以参考)

  • JDK1.8
  • Maven3.6
  • Mysql(5.5.62)
  • Nginx(1.19.8)
  • Redis(6.2.1)

以上软件买过阿里云服务器之后是可以在宝塔的界面下载并控制的。

宝塔上传大 mysql 宝塔数据库导入50m限制_宝塔上传大 mysql_02

 

二、配置修改之后端

1、修改数据库

宝塔上传大 mysql 宝塔数据库导入50m限制_服务器_03

 

2、修改端口号和文件路径

宝塔上传大 mysql 宝塔数据库导入50m限制_服务器_04

宝塔上传大 mysql 宝塔数据库导入50m限制_jar_05

3、修改Redis

宝塔上传大 mysql 宝塔数据库导入50m限制_宝塔上传大 mysql_06

 

4、配置数据库

我的数据库名字是 ry-vue,在上面的截图中是可以看见的

将项目中的SQL文件夹中的两个文件导入到数据库中。

(注意,因为上面数据库的配置我们改为了服务器的IP,所以要导入到服务器的数据库中哦。)

宝塔上传大 mysql 宝塔数据库导入50m限制_jar_07

 

 

宝塔上传大 mysql 宝塔数据库导入50m限制_jar_08

 

5、打包

在若依的bin目录下是有一个package.bat文件的,双击运行

宝塔上传大 mysql 宝塔数据库导入50m限制_数据库_09

 

 

宝塔上传大 mysql 宝塔数据库导入50m限制_服务器_10

(方案一)

本地打包成功,随后在这个文件夹下执行cmd命令。

宝塔上传大 mysql 宝塔数据库导入50m限制_宝塔上传大 mysql_11

宝塔上传大 mysql 宝塔数据库导入50m限制_服务器_12

然后会让你输入root用户的密码 输入即可。随后会有一个上传的百分比进度条。jar包到此为止上传成功。

(方案二)

也是我常用的。FTP、FileZilla或者FinalShell都可以,我用的的是FinalShell

宝塔上传大 mysql 宝塔数据库导入50m限制_宝塔上传大 mysql_13

 

三、配置修改之前端

宝塔上传大 mysql 宝塔数据库导入50m限制_jar_14

完成图片中的这几步,下载淘宝镜像,本地运行确保没问题。

在ruoyi-ui文件夹下运行下面两行命令(前提是要下载node)

npm install --registry=https://registry.npm.taobao.org

npm run dev

另外下图这个配置修改。(本地跑的话是要改下面张图的,如果是服务器那么就不需要)

我们暂时修改。

宝塔上传大 mysql 宝塔数据库导入50m限制_jar_15

 

本地npm run dev之后的效果,接口500是因为没启动本地后端。

宝塔上传大 mysql 宝塔数据库导入50m限制_宝塔上传大 mysql_16

然后就可以打包了,还在ruoyi-ui文件夹下执行 npm run build:prod

打包成功之后。这里会出现一个dist文件夹

宝塔上传大 mysql 宝塔数据库导入50m限制_数据库_17

将这个文件夹上传至服务器,方法跟jar包的一样。

我的jar包和前端的包放在一个文件夹下面

宝塔上传大 mysql 宝塔数据库导入50m限制_服务器_18

到此为止,前端和后端的包都已经部署完毕。

四、配置Nginx

主要看server块中的配置,其他不用看。

user  www www;
worker_processes auto;
error_log  /www/wwwlogs/nginx_error.log  crit;
pid        /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;

events
    {
        use epoll;
        worker_connections 51200;
        multi_accept on;
    }

http
    {
        include       mime.types;
        #include luawaf.conf;

        include proxy.conf;

        default_type  application/octet-stream;

        server_names_hash_bucket_size 512;
        client_header_buffer_size 32k;
        large_client_header_buffers 4 32k;
        client_max_body_size 50m;

        sendfile   on;
        tcp_nopush on;

        keepalive_timeout 60;

        tcp_nodelay on;

        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 64k;
        fastcgi_buffers 4 64k;
        fastcgi_busy_buffers_size 128k;
        fastcgi_temp_file_write_size 256k;
        fastcgi_intercept_errors on;

        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.1;
        gzip_comp_level 2;
        gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
        gzip_vary on;
        gzip_proxied   expired no-cache no-store private auth;
        gzip_disable   "MSIE [1-6]\.";

        limit_conn_zone $binary_remote_addr zone=perip:10m;
        limit_conn_zone $server_name zone=perserver:10m;

        server_tokens off;
        access_log off;

server
    {
        listen 80;
        server_name xxx.xxx.xxx.xxx; # 这里是你的服务器IP地址

        location / {
            root   /home/web/dist;  # 前端工程的目录
            index  index.html;  # 前端页面
            try_files $uri $uri/ /index.html;
        }
        
        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:9000/;
        }
        
        location ~ /\.
        {
            deny all;
        }

        access_log  /www/wwwlogs/access.log;
    }
include /www/server/panel/vhost/nginx/*.conf;
}

五、运行jar包

java -jar ruoyi-admin.jar   运行成功之后ctrl+c程序会退出

nohup java -jar ruoyi-admin.jar > ruoyi.log 2>&1 &    表示一直运行,日志输出到ruoyi.log文件当中。

宝塔上传大 mysql 宝塔数据库导入50m限制_宝塔上传大 mysql_19

程序运行没问题之后,网站中输入服务器IP地址会自动跳转到若依的网站当中。(完结,撒花~~)