项目发布:
手动部署
- 执行package指令,进行打包操作,将当前的springboot项目,打成一个jar包。
- 将jar包上传到Linux服务器
- 在Linux系统下cd到所在的目录,输入Java -jar boot工程.jar 命令
- 到项目所在目录下,输入指令nohup java -jar boot工程.jar &>boot工程.log &命令
- 项目启动
自动部署:
- 在Linux中安装Git:
- 执行如下指令:yum list git------列出git安装包,yum install git-----在线安装git
- 通过 git --version去验证git的环境
- Git克隆代码
git clone https://gitee.com/ChuanZhiBoKe/文件名.git
- 在Linux中安装maven
1、将maven安装包上传到Linux,解压maven安装包到/usr/local目录,
输入tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local
2、配置环境变量
输入vim/etc/profile 修改配置文件,加入如下内容:
vim /etc/profile
修改配置文件,进入到命令模式,按G切换到最后一行,按a/i/o进入插入模式,然后在最后加入如下内容 :
export MAVEN_HOME=/usr/local/apache-maven-3.5.4
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
然后按ESC进入到命令模式,输入 :wq 保存并退出
3、输入source /etc/profile重载配置
4、输入vim /local/apache-maven-3.5.4/conf/settings.xml来配置仓库
找到<!-- interactiveMode,在上面添加以下内容
<localRepository>/usr/local/repo</localRepository>
- 编写Shell脚本(拉取代码,编译,打包,启动)
- 直接在sh目录下创建一个脚本bootStart.sh,然后将资料中的bootStart.sh文件打开,内容拷贝过来即可
- 脚本内容:
#!/bin/sh
echo =================================
echo 自动化部署脚本启动
echo =================================
echo 停止原来运行中的工程
APP_NAME=helloworld
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Stop Process...'
kill -15 $tpid
fi
sleep 2
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Kill Process!'
kill -9 $tpid
else
echo 'Stop Success!'
fi
echo 准备从Git仓库拉取最新代码
cd /usr/local/helloworld
echo 开始从Git仓库拉取最新代码
git pull
echo 代码拉取完成
echo 开始打包
output=`mvn clean package -Dmaven.test.skip=true`
cd target
echo 启动项目
nohup java -jar helloworld-1.0-SNAPSHOT.jar &> helloworld.log &
echo 项目启动完成
将helloworld替换为项目名即可
- 为用户授予执行Shell脚本的权限
所以可以执行如下指令:chmod 777 bootStart.sh
- 执行Shell脚本
授权成功后就可以执行该shell文件了,输入./bootStart.sh即可。