linux部署若依分离版

该文详细介绍了如何搭建一个基于前后端分离的系统,包括安装JDK、MySQL、Redis、Maven和Node.js,以及配置Nginx进行反向代理。在MySQL中创建数据库并导入数据,使用Node.js打包前端项目,最后通过Nginx代理后台服务以实现动态页面的处理。

一、环境

前言

  • 整体架构是前后端分离
  • 所有的前端静态页面由nginx来处理
  • 动态页面nginx会方向代理给后台程序8080
  • redis加快访问
  • 数据存到数据库中mysql
  • 这里的nodemaven是只是用来打包前端和后端写的项目的
JDK >= 1.8(推荐1.8)
mysql >= 5.7.0 (推荐5.7)
redis >= 3.0
maven >= 3.0
node >= 12
nginx 不限制版本(推荐1.24)
用的软件包链接:https://pan.baidu.com/s/1JSSWIdYNYCora9dMtzrFdg 
提取码:wnes

1、安装JDK及环境准备

# 先创建目录
[root@localhost ~]# mkdir -p /ruoyi/{software,source,webapp}
[root@ruoyi ~]# tree /ruoyi/
/ruoyi/
├── software	# 存放软件
├── source		# 存放若依源码
└── webapp		# 存放运行若依时文件
[root@ruoyi ~]# cd /ruoyi/source/
[root@ruoyi source]# git clone https://gitee.com/y_project/RuoYi-Vue.git
[root@ruoyi source]# mv RuoYi-Vue/ ruoyi-vue
[root@ruoyi ~]# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
[root@ruoyi ~]# yum groupinstall "Development Tools" -y

2、安装mysql

[root@ruoyi ~]# cd /ruoyi/software/
[root@ruoyi software]# mkdir mysql
[root@ruoyi software]# tar -xf mysql-5.7.17.tar -C mysql
[root@ruoyi software]# yum -y install mysql/*.rpm
[root@ruoyi software]# systemctl enable mysqld --now
[root@ruoyi software]# grep -i password /var/log/mysqld.log 
[root@ruoyi software]# mysql -uroot -p'uw6kIT4K6h=Z'

# 设置mysql的密码个登录权限
mysql> alter user root@"localhost" identified by "123qqq...A";
mysql> grant all on *.* to root@"%" identified by "123qqq...A" with grant option;
# 创建库,库名自己决定
mysql> create database ryvue default charset utf8 collate utf8_general_ci;
# 导入数据
[root@ruoyi ~]# cd /ruoyi/source/ruoyi-vue/
[root@localhost ruoyi-vue]# mysql -uroot -p123qqq...A ryvue < sql/ry_20230223.sql
[root@localhost ruoyi-vue]# mysql -uroot -p123qqq...A ryvue < sql/quartz.sql

3、安装redis

[root@ruoyi ruoyi-vue]# cd /ruoyi/software/
[root@ruoyi software]# yum -y install gcc make
[root@ruoyi software]# tar -xf redis-5.0.14.tar.gz 
[root@ruoyi software]# cd redis-5.0.14/
[root@ruoyi redis-5.0.14]# make && make install
[root@ruoyi redis-5.0.14]# ./utils/install_server.sh	//一路回车
# 修改redis的登录方式和密码
[root@ruoyi redis-5.0.14]# vim /etc/redis/6379.conf
  70 bind 0.0.0.0
 501 requirepass 123456
# 修改之后重启
[root@ruoyi redis-5.0.14]# /etc/init.d/redis_6379 restart

# 在另一台机器测试
[root@localhost ~]# redis-cli -h 192.168.1.50 -p 6379 -a 123456
192.168.1.50:6379> ping
PONG	# 成功

4、安装maven

  • 下载官网:https://maven.apache.org/download.cgi
[root@ruoyi ~]# cd /ruoyi/software/
[root@ruoyi software]# tar -xf apache-maven-3.9.2-bin.tar.gz -C /usr/local/
[root@ruoyi software]# mv /usr/local/{apache-maven-3.9.2,maven}
[root@ruoyi software]# cd /usr/local/maven/
# 把命令放到PATH环境变量里,
[root@ruoyi maven]# ln -s /usr/local/maven/bin/mvn /usr/local/bin/
# ---------或者去vim /etc/profile文件写环境变量
# 例:
#JDK
export MAVEN_HOME=/usr/local/maven
export PATH=${MAVEN_HOME}/bin:${PATH}
# ----------------------


# 显示版本正确
[root@ruoyi maven]# mvn -version
Apache Maven 3.9.2 (c9616018c7a021c1c39be70fb2843d6f5f9b8a1c)	
# 更换阿里的镜像源,注释160-167行,在添加新的
[root@ruoyi maven]# vim conf/settings.xml
<mirror>
    <id>aliyunmaven</id>
    <mirrorOf>*</mirrorOf>
    <name>阿里云公共仓库</name>
    <url>https://maven.aliyun.com/repository/public</url>
</mirror>

5、安装nodejs

  • 下载官网:https://nodejs.org/dist/
[root@ruoyi ~]# cd /ruoyi/software/
[root@ruoyi software]# tar -xf node-v16.9.1-linux-x64.tar.gz -C /usr/local/
[root@ruoyi software]# mv /usr/local/{node-v16.9.1-linux-x64,nodejs}
[root@ruoyi software]# cd /usr/local/nodejs/
# 把二进制文件放到PATH目录中
[root@ruoyi nodejs]# ln -s /usr/local/nodejs/bin/node /usr/local/bin/
[root@ruoyi nodejs]# ln -s /usr/local/nodejs/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm
# 验证
[root@ruoyi nodejs]# node -v
v16.9.1
[root@ruoyi nodejs]# npm -v
7.21.1
# 查看当前的镜像源
[root@ruoyi nodejs]# npm config get registry
https://registry.npmjs.org/
# 更换淘宝的镜像源
[root@ruoyi nodejs]# npm config set registry http://registry.npm.taobao.org/
[root@ruoyi nodejs]# npm config get registry
http://registry.npm.taobao.org/

6、安装nginx

[root@ruoyi ~]# cd /ruoyi/software/
[root@ruoyi software]# wget https://nginx.org/download/nginx-1.24.0.tar.gz
[root@ruoyi software]# tar -xf nginx-1.24.0.tar.gz 
[root@ruoyi software]# cd nginx-1.24.0/
[root@ruoyi nginx-1.24.0]# yum -y install gcc pcre-devel openssl-devel
[root@ruoyi nginx-1.24.0]# ./configure --with-http_ssl_module
[root@ruoyi nginx-1.24.0]# make && make install
[root@ruoyi nginx-1.24.0]# cd /usr/local/nginx/
[root@ruoyi nginx]# sbin/nginx
# # 把二进制文件放到PATH目录中
[root@ruoyi nginx]# ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/
[root@ruoyi nginx]# nginx -v
nginx version: nginx/1.24.0

二、上线网页

1、maven打包

  • 打包后端java写的程序
[root@ruoyi ~]# cd /ruoyi/source/ruoyi-vue/
# 修改配置文件
[root@localhost ruoyi-vue]# vim ruoyi-admin/src/main/resources/application-druid.yml
  9                 url: jdbc:mysql://localhost:3306/ryvue?useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai	# 写好你的库名
 10                 username: root
 11                 password: 123qqq...A	# 你的数据密码
[root@localhost ruoyi-vue]# vim ruoyi-admin/src/main/resources/application.yml
 12   profile: /ruoyi/webapp/ruoyi-vue/uploadPath	# 存放若依图片的
 21   port: 8080		# 端口一般不用改
 73   host: localhost	# 用localhost方式登录(前提是你的redis可以localhost的方式登录)
 75   port: 6379		# redis端口
 79   password: 123456	# redis密码

# 创建目录
[root@ruoyi ruoyi-vue]# mkdir -p /ruoyi/webapp/ruoyi-vue/uploadPath
# 官方也给了打包的命令
[root@ruoyi ruoyi-vue]# cat bin/package.bat
[root@ruoyi ruoyi-vue]# mvn clean package -Dmaven.test.skip=true
# 或者使用
[root@ruoyi ruoyi-vue]# mvn clean
[root@ruoyi ruoyi-vue]# mvn package

# 查看打包的jar包
[root@ruoyi ruoyi-vue]# ls ruoyi-admin/target/ruoyi-admin.jar

2、node打包

  • node是打包前端的项目
[root@ruoyi ~]# cd /ruoyi/source/ruoyi-vue/
[root@ruoyi ruoyi-vue]# cd ruoyi-ui/
[root@ruoyi ruoyi-ui]# npm install		//安装依赖
[root@ruoyi ruoyi-ui]# npm run build:prod	//打包
# dist目录下是打包好的网页文件
[root@ruoyi ruoyi-ui]# ls dist/

3、nginx方向代理

[root@ruoyi ruoyi-ui]# ls dist/
favicon.ico  html  index.html  index.html.gz  robots.txt  static
[root@ruoyi ruoyi-ui]# rm -rf /usr/local/nginx/html/*
[root@ruoyi ruoyi-ui]# scp -r dist/* /usr/local/nginx/html/
  • 先上线静态页面
  • 因为还有设置后台程序和方向代理,所以会出现404异常的现象

在这里插入图片描述

  • 设置方向代理
[root@ruoyi ruoyi-ui]# cd /usr/local/nginx/
[root@ruoyi nginx]# vim conf/nginx.conf
 43         location / {
 44             root   html;
 45             try_files $uri $uri/ /index.html;	# 添加
 46             index  index.html index.htm;
 47         }
# 添加nginx方向代理,把需要java解释的网页给到8080
 57         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/;
         }   
[root@ruoyi nginx]# nginx -s reload
# 上面nginx已经设置反向代理了,这里把jar运行起来
# jar里内嵌tomcat,直接运行就可以了
[root@ruoyi webapp]# cd /ruoyi/source/ruoyi-vue/
[root@ruoyi ruoyi-vue]# cp ruoyi-admin/target/ruoyi-admin.jar /ruoyi/webapp/
[root@ruoyi ruoyi-vue]# cd /ruoyi/webapp/
[root@ruoyi webapp]# nohup java -jar ruoyi-admin.jar &
# 查看端口
[root@ruoyi webapp]# netstat -utnlp | grep java

在这里插入图片描述

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值