前端打包成dist用nginx进行部署,部署到本地服务器,端口80
后端打包成为jar包进行部署
目录
环境准备
借助远程连接工具windterm或xshell
安装nginx
安装jdk1.8+(推荐1.8)
安装mysqk5.7+(推荐5.7)
安装maven3.9(推荐
默认安装nginx-1.20.1-10.el7.x86_64)
安装nodejs16.20(推荐node-v16.20.1-linux-x64.tar.gz,版本不能太高)
在https://nodejs.org/en/download/中下载nodejs
wget https://nodejs.org/dist/v16.20.1/node-v16.20.1-linux-x64.tar.gz
tar node-v16.20.1-linux-x64.tar.gz
mv /root/node-v16.20.1-linux-x64 /usr/local
mv /usr/local/node-v16.20.1-linux-x64 /usr/local/node
vim /etc/profile
配置PATH
export NODE_HOME=/usr/local/node
export PATH=$NODE_HOME/bin:$PATH
让修改后的profile生效:
source /etc/profile
验证
node -v npm -v
部署系统
因为本项目是前后端完全分离的,所以需要前后端都单独部署好,才能进行访问。
RuoYi-Vue-master/ruoyi-ui是前端文件,其他的是后端文件用来打包成jar包部署。
前端部署&通过NGINX部署运行前端
1、进入cd ruoyi-ui
2、下载依赖
npm install --unsafe-perm --registry=https://registry.npm.taobao.org
3、打包
npm run build:prod
在ruoyi-ui中就会出现dist文件
nginx配置
配置vim etc/nginx/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
charset utf-8;
location / {
root /usr/RuoYi-Vue-master/ruoyi-ui/dist;#自己dist的位置
try_files $uri $uri/ /index.html;
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://localhost:8080/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
修改完nginx.conf 后需要使用 nginx -s reload 重载一下配置
后端部署
打开防火墙
# 开放3306端口(数据库通用端口)
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 开放8080端口(需要访问的端口)
firewall-cmd --zone=public --add-port=8080/tcp --permanent
# 重载防火墙配置
firewall-cmd --reload
配置mysql
配置服务器上的mysql数据库,使mysql数据库可以被远程访问。
一定要打开3306端口,然后使用navicat或者其他工具连接mysql
然后导入这两个sql文件
quartz.sql
ry_20231130.sql
必要配置
- 修改数据库连接,编辑
resources
目录下的application-druid.yml
# 数据源配置
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
druid:
# 主库数据源
master:
url: 数据库地址
username: 数据库账号
password: 数据库密码
- 修改服务器配置,
编辑resources目录下的application.yml
# 开发环境配置
server:
# 服务器的HTTP端口,默认为80
port: 端口
servlet:
# 应用的访问路径
context-path: /应用路径
redis
有设置密码
需要添加密码
password:你的密码
后端运行
在文件中运行mvn clean packag进行打包
到ruoyi-admin/target中运行
cd /ruoyi.admin/target
nohup java -jar ruoyi-admin.jar