目录
前言
本篇主要讲述如何在ubnutu系统中发布基于RuoYi前后端分离的项目
采用云服务器:华为云
ubnutu版本:20.04
为什么要使用云服务器:
现在的云服务器越来越普及,将来可能会像手机一样普及,无论是大型公司还是个人站长,充分利用云服务器,将会节省更多的时间和金钱。
这里使用的华为云服务器(根据自己的需求选择配置 ?这里使用的系统为ubnutu20.04)
安全组的意义:
和windows防火墙类似,安全组是一种虚拟防火墙,具备状态检测和数据包过滤功能,可以对进出云服务器的流量进行数据包过滤,是一种重要的网络安全隔离手段。我们可以通过配置安全组规则,允许或禁止安全组内的云服务器对公网或私网的访问,从而在云端划分安全域
# 一些常见的端口
8080 ? ? ? ? ?# Tomcat
3306 ? ? ? ? ?# MySQL
6379 ? ? ? ? ?# Redis
80 ? ? ? ? ? ? ?# Nginx
443 ? ? ? ? ? ?# 保护Web浏览器通信
22 ? ? ? ? ? ? ?# Ssh应用端口 ?用于远程连接Linux云服务器
3389 ????????# 用于远程连接Windows云服务器
?在安全组设置中将我们需要的端口添加
在远程连接前进行重置密码操作
?采用FinalShell远程连接云服务器
安装配置需要应用可查看博主之前的帖子
需要应用
Jdk? ? ? ? Tomcat? ? ? ? MySQL? ? ? ? Redis? ? ? ? Nginx
在Idea中打开基于RuoYi前后端分离版开发的项目,修改项目需求配置
在 ruoyi-admin 目录中找到 application-druid.yml 文件 进行修改
url: 数据库路径
username: 数据库账号
password: 账号密码
在 ruoyi-admin 目录中找到 application.yml 文件 进行修改
同样在 application.yml 中 进行修改
application.yml中的profile需要改为服务器存在的真实路径,根据实际情况调整
?注:这里我是为了防止端口冲突将服务器的Http端口改为6688(需在云服务器中修改安全组配置)可不修改
在 ruoyi-admin 目录中找到 logback.xml文件 进行修改
logback.xml文件中的路径建议改为./logs,根据实际情况调整
在idea右侧的Maven中点击package进行打包,命令加载完后会在ruoyi-admin的target文件夹中生成一个ruoyi-admin.jar文件
?
在Idea自带的终端中进入到ruoyi-ui目录
# 输入命令
npm run build:prod
# 如果输入命令出现报错 则代表需要下载依赖,下载完成后重新输入上条即可
npm install
执行命令完成后会在ruoyi-ui文件夹下面生成一个dist文件夹
将需要部署的项目上传至FinalShell中的ruoyi目录中
# 进入local目录 cd /usr/local # 创建ruoyi目录 mkdir ruoyi
将需要部署的项目压缩上传(压缩上传效率更快)
在之前创建好的ruoyi目录中创建一个以app命名的文件夹
# 进入ruoyi目录?
cd /usr/local/ruoyi
#创建app目录
mkdir app
# 进入app目录并创建 ruoyi 文件夹
cd app ?? ??? ?mkdir ruoyi
将后端编译的jar包以及前端编译的dist文件夹里面的文件上传至?/usr/local/ruoyi/app/ruoyi-ui中
?# 替换掉ruoyi-ui的实际储存路径
cd /etc/nginx/conf.d
vim nginx.conf
# 将代码清空加入以下代码
server {
listen 80;
server_name 139.9.45.154;
location / {
root /usr/local/ruoyi/app/ruoyi-ui;
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
??sudo ngixn
# 启动
sudo systemctl start redis-server
# 查看进程
sudo systemctl status redis-server
2.3.5 MySQL数据库
通过Navicat远程连接MySQL数据库并运行项目SQL脚本
# 进入app中的ruoyi目录
cd /usr/local/ruoyi/app
# 启动
java -jar ruoyi-admin.jar
?在浏览器中输入http://139.9.45.154/index
至此在ubnutu20.04版本中部署完成! ?