天天看点

Jenkins详细安装与构建部署使用教程

  Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:

1、持续的软件版本发布/测试项目。

2、监控外部调用执行的工作。

本文使用的Linux:Ubuntu

其中JDK、Tomcat、SVN服务器请看这里Ubuntu安装配置JDK、Tomcat、SVN服务器

一、安装Jenkins

本文直接使用war包安装

下载地址:​​https://jenkins-ci.org/content/thank-you-downloading-windows-installer/​​

Jenkins详细安装与构建部署使用教程

war包有两种安装方法

方法一

下载jenkins.war, 拷贝到D:\Java\Tool\jenkins()下,然后运行java -jar jenkins.war. (注意需要先安装JDK,然后设置JAVA_HOME环境变量且将%JAVA_HOME%\bin加入到PATH环境变量中)

运行如下:

Jenkins详细安装与构建部署使用教程

访问http://localhost:8080 , jenkins的主界面如下:

Jenkins详细安装与构建部署使用教程

方法二

把Jenkins 1.409.1版解压,把得到的war包直接扔到tomcat下,启动tomcat,Jenkins就安装完毕,访问http://localhost:8080 

二、构建一个Maven项目

1、新建一个job

Jenkins详细安装与构建部署使用教程

2、输入名称和项目类型

Jenkins详细安装与构建部署使用教程

3、设置编译的版本号等信息

Jenkins详细安装与构建部署使用教程

4、设置svn库地址:

输入项目托管的svn的地址,如果有出现要输入账号和密码的地方,输入即可。

Jenkins详细安装与构建部署使用教程

如果有出现如下说明用户或密码不对:

Jenkins详细安装与构建部署使用教程

点击进去重新设置用户和密码

5、配置jdk和maven

第一次打开出现如下,点击进去。要求提示设置JDK和Maven

Jenkins详细安装与构建部署使用教程

点击系统管理-》系统设置,找到JDK和Maven的设置位置

选择本电脑的:

Jenkins详细安装与构建部署使用教程

9、到这里已经可以构造这个项目了。

点击构建

Jenkins详细安装与构建部署使用教程

构建输出的信息:

Jenkins详细安装与构建部署使用教程

构建成功输出如下 :

Jenkins详细安装与构建部署使用教程

10、验证

这时它已经自动把这个项目打包了一个war包,默认打包到了C:\Users\linbingwen\.jenkins\workspace\JavaWeb\JavaWeb\target

Jenkins详细安装与构建部署使用教程

或者点击如下:

Jenkins详细安装与构建部署使用教程

三、自动远程部署到tomcat

接下来要完成自动构建成war包后,将些war包上传到远程linux的tomcat的webapps目录,更新项目的war包,并重启tomcat.

1、安装插件

系统管理-》管理插件,在可选插件里找到下面这个,然后点击直接安装命令,安装成功后要重启jenkins

Jenkins详细安装与构建部署使用教程

t笔者在安装插件时报错如下:

Jenkins详细安装与构建部署使用教程

这应该是天朝的墙所导致的,所以笔者就使用了手动安装的方式。

解决方法:

手动安装

到https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH+Plugin,下载hpi到本地电脑到

Jenkins详细安装与构建部署使用教程

在系统管理--管理插件--高级--浏览-上传插件即可

Jenkins详细安装与构建部署使用教程

然后它自动上传并安装:

红色的是笔者在线安装不成功的,蓝色的是笔者安装成功的了,之后重启jenkis即可。

Jenkins详细安装与构建部署使用教程

2、配置ssh内容:

在系统管理-》系统设置里

找到Publish over SSH

然后输入:

Jenkins详细安装与构建部署使用教程

3、配置Post Steps

这里还是接着上面的JavaWeb项目,这个配置得安装了上面的插件后才会显示!

Jenkins详细安装与构建部署使用教程

其中,

Transfer SetSource files:表示要上传的本地的war包及路径,可到工作空间去看

Remove prefix:表示要上传时要去除的文件夹,即只上传war包

remote driectory:即表示执行时的路径,相当于把war包上传到这里了

exec commad:要执行的命令

要执行的脚本的内容:

[plain] view plain copy

#!/bin/sh  

#defined   

TOMCAT_HOME="/usr/java/tomcat/apache-tomcat-7.0.67/"  

ID=`ps -ef | grep java | grep tomcat|awk '{print $2}'`  

echo $ID   

echo "kill tomcat"  

kill -9 $ID  

echo "remover war file"  

cd "$TOMCAT_HOME"/webapps  

rm -rf JavaWeb-0.0.1-SNAPSHOT  

rm -rf JavaWeb-0.0.1-SNAPSHOT.war  

echo "copy war to webapp"  

cd /home/lin  

cp JavaWeb-0.0.1-SNAPSHOT.war "$TOMCAT_HOME"/webapps  

cd "$TOMCAT_HOME"/bin  

echo "start tomcat"  

./startup.sh  

步骤:

先停掉tomcat

删除webapp下对应的war包

复制war到webapps

重启tomcat

4、构建部署

点击项目的构建按钮,最终出现如下:

Jenkins详细安装与构建部署使用教程

在linux上打开浏览器,输入http://localhost:8080/JavaWeb-0.0.1-SNAPSHOT/

Jenkins详细安装与构建部署使用教程

注意:这里配置的ssh用户:lin要有root的权限,要不可以会报错没有权限执行kill 或rm 命令

本文使用的Linux:Ubuntu14.04