SpringBoot+Vue项目部署
1:项目部署所使用的工具或资源
Xshell:用于在本机Windows界面访问远端不同系统下的服务器。
Postman:Postman是一个接口测试工具,本次部署中用于测试后端接口。
Nginx:Nginx是一个高性能的 HTTP 和反向代理服务器,可以作为静态页面的 web 服务器
ECS服务器或者轻量应用服务器:
可以选择大厂云服务器供应商,如阿里、腾讯、华为。本次部署中采用腾讯云服务器。我购买的云服务器配置是2核2GB,镜像为CentOS 7.6
2:SpringBoot项目部署
2.1更改跨域配置
==将跨域配置修改为云服务器的公网ip==
2.2项目打包
- 首先打开maven,在maven生命周期选择clear选项,clear命令是maven的清除命令,这一步的目的是为了清空target目录下的所有内容。
- 选择package选项,将项目打成jar包。
- 控制台出现BUILD SUCCESS就表示打包成功
- 查看target目录,找到打包好的项目jar包。
2.3部署jar包
2.3.1上传jar包和静态资源文件
- 查看SpringBoot项目服务端口:我的是8090
- 在控制台开放相应端口
- 打开Xshell,输入云服务器公网ip创建一个新的会话。
- 双击刚刚创建的会话进行连接,输入用户名和密码
- 密码如果忘记的话到控制台中进行修改:
连接成功:
- 创建新目录,并将jar包通过Xftp传输到新创建的目录当中,==如果有静态资源的话就传输到jar包的同级目录下:==
2.3.2安装JDK
jdk官网:Java Downloads | Oracle
下载Linux版本:
![](https://imagebed-xuhuaiang.oss-cn-shanghai.aliyuncs.com/typora/6086d8eec6cc4e2c9331b551b0edc46a.png“ />
- 将JDK传输到项目目录
- 解压至自定义目录(一般是 /usr/local)
- 配置环境变量。进入到/etc目录下,用vim编辑器在 profile 文件中添加四个变量。
JDK11环境配置
4. 刷新配置
2.3.3安装MySQL
- 在控制台开发MySQL服务端口3306
![](https://imagebed-xuhuaiang.oss-cn-shanghai.aliyuncs.com/typora/98d084630daa489583549e6273c8a923.png“ />
- 在jar包同级目录下创建目录用于存放MySQL安装包
- 将MySQL安装包传输到刚刚创建的目录下,并解压
MySQL安装包百度云地址(版本8.0.26)
提取码:xha8
解压命令:
- 查看解压后的MySQL压缩包
- ==清空linux自带的数据库==(因为CentOS自带一个老版本的mariadb-libs与当前mysql包的冲突,故需要先卸载,再安装)
卸载已有的数据库:(卸载会把这个包的依赖包也一起卸载)
- 开始安装 mysql,依次执行下述命令
安装依赖:
依次执行以下命令:
- 查看MySQL的安装情况:
- 启动MySQL服务并查看服务状态
- 查看MySQL初始化密码
- 登录MySQL并修改初始密码
修改密码:
注意:==此数据库的密码要和jar包项目所连接的数据库的密码相同,否则会连接不上==
mysql8.0之后的版本加入密码安全度检测机制,如果设置密码过于简单会导致报错
下面将更改MySQL的密码安全设置:
- 首先查看当前MySQL的密码安全设置
- 更改密码长为6,密码安全策略等级为LOW
- 查看更改后的密码安全设置
- 更改密码
2.3.4导入sql文件资源
- 打开Navicat,右键数据库->转储sql文件->结构和数据
- 将sql文件通过Xftp传输到项目目录中
- 创建数据库
==切记:创建的数据库名要和SpringBoot中配置文件当中配置的数据库url的数据库名保持一致。==
- 进入创建的数据库,导入sql文件资源
查询测试:
2.3.5运行jar包
- 进入jar包目录下
==nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。==
执行命令:
- 查看日志文件
后端项目已经成功在8090端口运行
三:注意:如果操作不当导致jar包并没有在相应端口运行,但是已经占用进程的情况,再次运行jar包会报错的解决方案,
查看当前所有进程
杀死该进程:
再次执行运行jar包命令即可。
2.4接口测试
- 打开Postman,输入要测试的接口,显示测试成功
在nohub.out日志文件中可以查看到日志信息(==需要在SpringBoot配置文件中配置mybatis-plus的日志文件==)
3.Vue项目部署
3.1更改代理服务器、axios、Vuex配置
将上述三种的url路径由原来的localhost(本地化部署时)更改为云服务器公网IP
- 代理服务器
- axios接口配置
- Vuex
3.2将项目打包上传到云服务器
- 打开控制台,输入以下命令打包
- 在项目根目录下会自动生成一个dist文件夹
- 有两个Vue项目的另一个和上述操作一样,将两个dist文件分别重命名,等待Nginx安装完成后上传到服务器
3.3Nginx安装
提取码:xha8
- 将下载好的Nginx安装包发送到服务器中项目的根目录下
- 解压安装包到当前目录
安装包可以删除
- 安装相应依赖
安装gcc
安装perl库
安装zlib库
- 进入到nginx-1.18.0目录下,并执行以下命令
源码编译安装
执行make命令
执行make install命令
安装完成
- 启动Nginx服务
进入到以下目录并执行./nginx命令启动Nginx服务
在本地输入云服务器公网ip,出现以下界面就表示Nginx安装成功。
3.4部署第一个Vue项目
3.4.1将已经打包好的dist文件传送到nginx以下指定目录
3.4.1修改nginx.conf配置文件
- 进入到nginx目录下的conf目录,找到nginx.conf配置文件
- 使用vim编辑 nginx.conf配置文件
解决Vue项目部署后刷新404的问题
- 在控制台开发相应端口
- 保存并退出,进入nginx的sbin目录下重启Nginx服务
- 在本机浏览器输入公网ip和端口进行测试
3.5部署第二个Vue项目
- 通过vim编辑器进入nginx.conf配置文件,复制server部分,放在上一个server下面
- 在控制台开发相应端口
- 保存并退出,进入nginx的sbin目录下重启Nginx服务
- 在本机浏览器输入公网ip和端口进行测试
==项目部署完成啦==