SpringBoot项目部署到阿里云服务器(手动)
前言
最近给女朋友做的一个前后端分离的毕设,后端使用的是SpringBoot进行开发,之前实习发布版本的时候都是软件自动部署,现在自己买了服务器需要手动部署,于是在网上找了许多资料,关于服务器的设置、服务器运行环境配置、项目该怎么部署、怎么确定运行状态等等 这些问题都是一个一个一个一个查,真的是非常得细碎和耗时啊,于是在把毕设部署完之后我决定再回忆一下部署的过程,记录成为博客,希望能够帮助到还不知道如何手动部署后端项目的小白。 如有言辞不妥或者更简易的方法请留言,看到之后我会加以改正,还请大佬手下留情。
一、服务器
先说服务器,我是用的是阿里云的服务器,之前没有正规购买过自己的服务器,所以我是在购买的服务器,考虑到我目前对服务器的需求不多,所以我购买的是轻量应用服务器。 ESC服务器与轻量应用服务器面向的对象不同,性能也有所差异,。 (就本文来讲,这两个服务器皆可,没有太大差异 购买服务器的过程我讲不清楚,大家可以参考) 我的服务器操作系统版本为:CentOS Linux 7.9,想要查看操作系统版本可以使用linux命令:uname -a
运行环境搭建
1、连接服务器 ssh 用户@ip地址(例:ssh root@128.1.1.1) 输入密码 2、安装jdk 查看java版本信息:
yum -y list java*
安装jdk
yum -y install java-1.8.0-openjdk*
查看java版本
java -version
MySQL安装
宝塔安装 (需要linux命令安装过程请百度)
本地数据库导入
1、采用宝塔面板控制数据库
添加一个新的数据,数据库名、用户名、密码这三个是项目连接数据库时需要的属性,自行更改,其他属性按需修改,没有其他需求默认即可。 创建完成后导入本地数据库的sql文件即可。
2、linux命令
二、项目部署
1.打包项目
先clean,再package。打包完成后在target下会看见一个jar包。 这个jar包就是我们需要部署到服务器上的文件。
2.部署项目
在服务器上找到自己喜欢的位置,将jar包迁移上来。 可以使用宝塔直接上传文件,或者采用scp传输(例:scp /local/java/file /remote/user/directory)将本地file传输到服务器的directory文件目录下。
运行jar包且关闭终端无影响的方式:
nohup java -jar xxx.jar > nohup.out 2>&1 &
启动日志在nohup.out中可以查看,这个文件名可以更改,设置了日志输出的话也能在日志文件中看见项目启动的状态。
使用如下命令可看见项目运行状态
ps aux|grep xxx.jar
到这里项目部署就算完成了。 在我查询项目部署的过程中,我发现了一个博主写的脚本,使用过后觉得非常方便,在这里给大家 使用的时候注意文件开头不要漏掉了字母,否则脚本会运行失败。
总结
以上一些拙见希望能帮助到大家,如有错误与问题还请指教,谢谢。