Linux系统中通过Shell脚本自动打包部署启动JAVA项目

目录

一、在Linux中安装Git

二、在Linux中安装maven

三、编写shell脚本(拉取代码、编译、打包、启动)

四、为用户授予执行shell脚本的权限

五、执行Shell脚本


一、在Linux中安装Git

使用yum命令安装Git

yum list git  列出git安装包

yum install git 在线安装git

Linux系统中通过Shell脚本自动打包部署启动JAVA项目_第1张图片

安装好git后,把准备好的远程仓库克隆到Linux系统上

在/opt目录下,新建一个空目录,进入该目录执行克隆命令

使用git clone 远程仓库链接  命令,如下图

Linux系统中通过Shell脚本自动打包部署启动JAVA项目_第2张图片

二、在Linux中安装maven

1.去maven官方下载Linux系统的maven

2.通过Xftp工具把.gz压缩包传送到Linux系统上

3.通过tar命令解压

Linux系统中通过Shell脚本自动打包部署启动JAVA项目_第3张图片

 4.设置环境变量,打开/etc/profile文件

vim /etc/profile命令打开frofile文件,在最后添加如下代码,保存并退出

export MAVEN_HOME=/opt/apache-maven-3.6.1
export PATH=$PATH:$MAVEN_HOME/bin

 5.source /etc/profile命令重新加载profile文件

6.mvn -v命令查看版本,出现版本信息说明配置完成

Linux系统中通过Shell脚本自动打包部署启动JAVA项目_第4张图片

 7.配置本地仓库

        1.在/maven-3.6.1下新建repository文件夹,做为本地仓库

        2.设置conf/settings.xml文件,

                进到/maven-3.6.1/conf目录下执行 vim settings.xml 命令打开settings.xml文件

Linux系统中通过Shell脚本自动打包部署启动JAVA项目_第5张图片

/opt/maven-3.6.1/repository

三、编写shell脚本(拉取代码、编译、打包、启动)

在/opt/sh目录下创建exc.sh文件

#!/bin/sh
echo =================================
echo  自动化部署脚本启动
echo =================================

echo 停止原来运行中的工程
APP_NAME=test-spring-boot01#克隆远程仓库项目名字
#根据APP_NAME变量杀进程
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 /opt/git/test-spring-boot01

echo 开始从Git仓库拉取最新代码
git pull
echo 代码拉取完成

echo 开始打包
output=`mvn clean package -Dmaven.test.skip=true`#maven打包

cd target

echo 启动项目
nohup java -jar test-spring-boot01-1.0-SNAPSHOT.jar &> test-spring-boot01.log &#注意,改为自己的.jar包名
echo 项目启动完成

 打包完的jar包在,/opt/git/test-spring-boot01/target

四、为用户授予执行shell脚本的权限

通过chmod命令来修改权限

chmod 777 exc.sh

五、执行Shell脚本

在新建脚本exc.sh目录中下执行

./exc.sh

你可能感兴趣的:(linux,运维,服务器)