使用jenkins部署项目

简易版使用jenkins部署项目

将war包部署到tomcat中

将已有的war包部署到tomcat中(jenkins与tomcat在同一台主机)

点击Jenkins主页的新建任务

输入任务名称

选择构建一个自由风格的软件项目后点击确定

在构建内添加构建步骤,选择执行shell

输入执行脚本

#!/bin/sh
tomcat_path=/usr/java/tomcat/tomcat8081
ShutDownTomcat=${tomcat_path}/bin/shutdown.sh
StartTomcat=${tomcat_path}/bin/startup.sh
echo "============删除旧的war包==================="
rm ${tomcat_path}/webapps/docker.war
echo "============删除tomcat下旧的文件夹============="
rm -rf ${tomcat_path}/webapps/docker
echo "======拷贝编译出来的war包到tomcat下======="
cp /usr/java/project/docker.war  ${tomcat_path}/webapps/docker.war
echo "====================关闭tomcat====================="
${ShutDownTomcat}
echo "================sleep 10s========================="
for i in {1..10}
do
        echo $i"s"
        sleep 1s
done
export BUILD_ID=DontKillMe
echo "====================启动tomcat====================="
${StartTomcat}





启动jar
#!/bin/sh
jarPath=/usr/java/jar
projectJar=/usr/java/project
echo "============删除旧jar============="
rm -rf ${projectJar}/demo.jar
echo "======拷贝新的jar到运行的目录下面======="
cp ${jarPath}/demo.jar ${projectJar}/demo.jar
echo "====================关闭jar的进程====================="
l=`ps -ef|grep -v grep|grep demo|awk '{print $2}'`
kill -9 $l
echo "================sleep 10s========================="
for i in {1..10}
do
        echo $i"s"
        sleep 1s
done
export BUILD_ID=DontKillMe
echo "====================启动jar====================="
nohup java -jar ${projectJar}/demo.jar &

点击左侧的立即构建

maven版使用jenkins部署项目

准备linux的安装环境

1. 在linux上安装jdk,并配置环境变量

2. 在linux上安装tomcat,并配置环境变量

在之前文章 磁盘与文件管理有配置教程 http://t.csdnimg.cn/kJmXM

在linux上安装并配置git

安装依赖环境

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

2.删除已有的git(!!!)

这一步不能忘记,配置完环境变量后,如果 git --version 的版本不是我们所安装的要再次执行这个删除命令

yum -y remove git

3.将tar传输到/usr/手动创建的文件夹/git并解压

Git (git-scm.com)  其他方式(yum...)

Index of /pub/software/scm/git/ (kernel.org) tar包下载

tar -zxvf git-2.9.5.tar.gz

4.编译

cd git-2.9.5(进入解压目录下)

make prefix=/usr/formwork/git all

make prefix=/usr/formwork/git install

1.编译可能会出现

解决方法

yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

重新执行依赖安装,这里是配置之前的安装依赖已经安装过这个

在之前文章 磁盘与文件管理 ​​​​​​http://t.csdnimg.cn/kJmXM

        去掉 gcc 

然后执行后 继续执行

        make prefix=/usr/formwork/git all

        make prefix=/usr/formwork/git install

5.将环境变量配置到/etc/profile里面

6.重启环境变量配置

source /etc/profile

7.查看git版本

git --version

在linux上安装并配置maven

1.官网下载连接,下载 .tar.gz

Maven – Download Apache Maven

2.解压缩 tar -zxvf

3.配置环境变量

vi /etc/profile

export MAVEN_HOME=/usr/java/maven/apache-maven-3.5.0

export PATH=$MAVEN_HOME/bin:$PATH

使文件生效 source /etc/profile

export MAVEN_HOME=/usr/formwork/apache-maven-3.8.8
export GIT_HOME=/usr/formwork/git
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-1.el7_9.x86_64
export JRE_HOME=$JAVA_HOME
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH:$GIT_HOME/bin:$PATH:$MAVEN_HOME/bin:
$PATH
4.查看maven版本号

mvn -v

5.配置maven下载镜像

配置ali镜像

vim /usr/formwork/apache-maven-3.8.8/conf/settings.xml

<mirror>

        <id>alimaven</id>

        <mirrorOf>central</mirrorOf>

        <name>aliyun maven</name>

        <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>

</mirror>
6.安装maven必要的插件

记得配完下载镜像后再执行!!不然要等很久

mvn help:system

这个比较漫长

Jenkins安全配置(记得保存与应用)

全局配置(记得保存与应用)

路径看 vim /etc/profile  环境变量的配置路径即可

开始创建maven项目

下载maven的插件

下载git的插件

1.新建任务,创建maven项目

2.确定后下滑配置git仓库

3.继续下滑配置触发器,每五分钟触发一次

4.编译的选项

clean package -U -Dmaven.test.skip=true

BUILD_ID=DONTKILLME
echo "部署的目录和项目名称"
sh /usr/java/test/build.sh
echo "success"

对应的build.sh(存放在linux中的/usr/java/test/文件夹下)

#! /bin/bash
echo "部署的目录和项目名称"
DIR="/usr/java/project"
projectName="demo"
echo "待部署的应用服务器"
server_ips="192.168.253.16"
#所有的参数列表
for server_ip in ${server_ips[@]}
do
echo "进行备份操作"
mkdir -p $DIR/backup/${projectName}
  if [ -f "$DIR/${projectName}/${projectName}.jar" ];then
    mv $DIR/${projectName}/${projectName}.jar $DIR/backup/${projectName}/${projectName}-`date "+%Y%m%d_%H%M%S"`.jar
  fi
echo "拷贝jar包到目标服务器的目录下"
cp ${WORKSPACE}/target/*.jar $DIR/${projectName}/${projectName}.jar

echo "目标服务器:$DIR/${projectName}/${projectName}.jar"

echo "连接进行发布操作"
#mv /usr/java/test/demo.jar $DIR/backup/${projectName}/${projectName}.jar
echo "开始关闭jar"
l=`ps -ef|grep demo.jar|grep -v grep|awk '{print $2}'`
for i in $l
do
 kill -9 $i
done
sleep 5s
echo "启动jar"
nohup java -jar $DIR/${projectName}/${projectName}.jar --server.port=9999 > release_out.log 2>&1 &start_ok=false
done
 
5.注意文件的路径问题

在我们绑定的gi仓库地址上传我们的项目

Jenkins:

拉取代码: git

打包: jar

将对应的jar  存放到指定的位置

启动构建

两种都可以,立即构建

等待很漫长

构建失败解决方法

1.检查我们创建的 build.sh 文件是否有执行权限 没有的话 chmod -R 755 build.sh

2.vim /usr/formwork/apache-maven-3.8.8/conf/settings.xml 

在我们配置的ali 镜像 http 后面加 s (maven认为不安全阻止了访问)

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐