Jenkins基于gitee的项目的持续部署linux实战

Jenkins基于gitee的项目的持续部署实战

Jenkins实战需要服务器安装以下软件

开始实战

首先在我们的linux的maven配置文件中加入

<!-- 阿里云仓库-->
<mirror>
  <id>alimaven</id>
  <mirrorOf>central</mirrorOf>
  <name>aliyun maven</name>
  <url>https://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

先查看mvn的安装路径,再编辑其conf目录下的setting.xml文件
在这里插入图片描述

在这里插入图片描述

接着修改我们默认的文件地址

/home/deploy/repository/

在这里插入图片描述

OK前期部署完成,我们开始配置Jenkins

指定端口启动Jenkins,不要用8080,不然会和tomcat冲突

java -jar /usr/lib/jenkins/jenkins.war --httpPort=8088

在这里插入图片描述
启动完成后浏览器打开Jenkins

http://ipaddress:port

在这里插入图片描述

看到这个熟悉的老头,输入账号密码登录

然后点击新建Item
在这里插入图片描述
输入任务名称,选择自由项目
在这里插入图片描述
然后定义的两个String型的变量,一个是文件名,一个是url

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
注意,这里的url就是我们jitee里面的项目url

在这里获取
在这里插入图片描述
在这里插入图片描述
完事之后就可以开始写执行脚本了

在这里插入图片描述

在这里插入图片描述
注意 Jenkins会在构建完成后使用processTreeKiller杀掉了所有子进程,而且这是Jenkins的默认行为。

#!/bin/bash
#解决jenkins杀死衍生进程

export BUILD_ID=dontkillme

echo "=======进入的git仓库目录======="
mkdir -p /developer/git-rep/deploy/
cd /developer/git-rep/deploy/
#echo "=======删除之前克隆的目录======"
rm -rf /developer/git-rep/deploy/$git_dir
#echo "=======git克隆项目======="
git clone $git_url

cd /developer/git-rep/deploy/$git_dir

echo "=========更新git仓库最新代码到本地========="
git fetch


echo "========git pull========="
git pull



echo "=========maven打包项目========="
mvn clean package -Dmaven.test.skip=true


echo "=========删除tomcat中旧的ROOT.war========="
rm -rf /apps/tomcat/webapps/ROOT.war




echo "=========拷贝最新的war到tomcat中========="
cp /developer/git-rep/deploy/$git_dir/target/nd.com.war /apps/tomcat/webapps/ROOT.war



echo "=========删除旧的ROOT文件夹========="
rm -rf /apps/tomcat/webapps/ROOT



echo "=========关闭tomcat========="
sh /apps/tomcat/bin/shutdown.sh

echo "=========休眠10秒========="
for i in {
    
    1..10}
do
        echo ${
    
    i}"s"
        sleep 1s

done

echo "=========启动tomcat========="

sh /apps/tomcat/bin/startup.sh -Dspring.profiles.active=$profile


echo "重新部署完成!!"

具体相关参数请根据自己的配置修改

配置完成之后就可以开始构建了

在这里插入图片描述
等待构建完成就可以啦
在这里插入图片描述
也可以查看部署情况

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_50217781/article/details/112430843
今日推荐