1.为什们要使用jenkins

Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:

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

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

2.安装jenkins前的准备工作
项目 描述
系统环境 centos6.8
内存 4G
JDK jdk1.7+
容器 tomcat7
版本 jenkins-1.651.3

下载地址:http://ftp.yz.yamagata-u.ac.jp/pub/misc/jenkins/war-stable/1.651.3/jenkins.war

3.安装与运行

1.Jenkins本身由JAVA语言开发的web应用程序,通过war包发布,所以最便捷的方式就是通过war进行安装(严格来说不算安装,说部署更合适)。

2.当然Jenkins也提供了针对不同平台的安装包,如windows的安装文件、ubuntu的安装包等等,但不建议使用定制的安装程序进行安装,最直接的理由就是学习成本比较高和可控性不好,所以本文将介绍如何使用war包安装、运行。

3.使用war包安装

Jenkins可以直接使用java -jar jenkins.war来运行,需要配置java黄精变量 命令要在jenkins.war所在路径下执行,否则要加上jenkins.war所在目录的相对或绝对路径。

注意:前文提到Jenkins的运行需要依赖jdk和web容器,这里怎么又说可以直接运行呢?这是个好问题,产生这种神奇现象的奥秘在于Jenkins内置了Jetty容器.

4.使用Tomcat安装

首先从Tomcat官方网站或其他渠道下载Tomcat,本文用的版本是7.0.63绿色版,下载地址为:apache-tomcat-7.0.63。

解压Tomcat安装包,配置环境变量,启动tomcat就可以了。

4.配置

列出的配置为“系统管理(Manage Jenkins)>系统设置(Configure System)”中的内容,与特定的插件相关内容将在插件使用中说明。

1.主目录(Home directory)

Jenkins存放数据的目录,如:Jenkins自身的配置文件、默认的工作空间(之所以说是默认工作空间是因为Job的工作空间在Job设置中可以特别指定,与默认工作空间可以不同)。默认主目录为${user_home}/.jenkins,在Jenkins启动前可以通过设置修改,设置途径如下:

设置系统环境变量JENKINS_HOME,如:JENKINS_HOME=/root/.jenkins,

在WEB容器启动前设置应用级的环境变量JENKINS_HOME

这种方式是我在实际使用中推荐的一种方式,在同一台机器上部署多个需要不同配 置的应用时很灵活,通常我会为每个应用提供一个env.sh文件,可能的内容如下:

JAVA_HOME=/usr/java/jdk1.6.0_14/
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH
##Jenkins
JENKINS_HOME=/root/.jenkins
export JENKINS_HOME
## for linux
LANG=zh.UTF-8
export LANG

Resin

编写resin的启动脚本,脚本比较简单主要作用理设置环境变量,调用resin提供的启动命令启动resin,内容如下:

#!/bin/sh
##应用所在目录
cd /data/xxx_adcenter
. ./env.sh
sh $RESIN_HOME/bin/resin.sh $1

Tomcat

修改jenkins.war中的web.xml文件,设置HUDSON_HOME,内容如下:

<env-entry>
<env-entry-name>HUDSON_HOME</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>/data/jenkins</env-entry-value>
</env-entry>

2.工作空间根目录(Workspace Root Directory)

Job的工作空间,可使用的环境变量有:

JENKINS_HOME、ITEM_ROOTDIR、ITEM_FULLNAME

默认值在不同版本的Jenkins中可能不同,如:

Jenkins-1.585中为${JENKINS_HOME}/workspace/${ITEM_FULLNAME}

Jenkins-1.653中为${ITEM_ROOTDIR}/workspace

ITEM_ROOTDIR:代表${JENKINS_HOME}/jobs/${ITEM_FULLNAME}/ ITEM_FULLNAME:job名字

3.构建记录根目录(Build Record Root Directory)

可使用的变量如“工作空间根目录”,默认值为${ITEM_ROOTDIR}/builds。

4.用法(Usage)

控制如何在节点上安装构建,从节点(slave)上也有这个设置,包含两个选项:

尽可能的使用这个节点(Utilize this node as much as possible):

这是默认设置,在这种模式下,当有一个可以在这个节点上运行的构建时,Jenkins将使用这个节点进行构建。在实际使用中建议将主节点(master)设置为这种模式,从节点设置为“只允许运行绑定到这个节点的JOB运行”,这样可以避免从节点出现故障时导致的Job无法运行的情况发生。

只允许运行绑定到这个节点的JOB(Only build jobs with label restrictions matching this node):

在这个模式下,Jenkins只运行指定在此节点运行的Job。在Job设置的“Restrict where this project can be run”中指定可运行Job的节点,关于如何指定节点的高级特性在Job设置中介绍。

1.jenkins持续集成-jenkins安装的更多相关文章

  1. Jenkins持续集成_01_Mac安装配置

    前言 Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件.在自动化测试中,用来持续集成,跑定时任务进行定时自动化监测.更详细介绍可查看jenkins官网: ...

  2. centos下搭建Jenkins持续集成环境(安装jenkins)

    1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装. 1 wget -O /etc/yum.repos.d/ ...

  3. Jenkins持续集成企业实战系列之Jenkins持续集成简介及安装-----02

    1.      Jenkins持续集成简介 注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.    最初接触Jenkins也是由于公司需求, ...

  4. [Jenkins]持续集成环境下fingbug插件的安装使用与配置

    参考:https://wiki.jenkins.io/display/JENKINS/FindBugs+Plugin 突然,天降杂事.我是想安安静静的做个美丽的测试...但是事与愿违,项目经理叫我帮忙 ...

  5. Jenkins持续集成(上)-Windows下安装Jenkins

    环境:Windows 2008 R2.Jenkins2.235.1: 概要 前面写过一篇文章,<自动发布-asp.net自动发布.IIS站点自动发布(集成SLB.配置管理.Jenkins)> ...

  6. python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法?

    python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法: 原因:因为jenkins是用windows installer 安装成 windo ...

  7. jenkins持续集成源码管理选项为None,构建失败找不到git.exe解决办法

    我的jenkins版本为Jenkins ver. 2.19.1 1.源码管理选项只有None的解决办法: 在插件管理中心,搜索对应的源码管理插件这里以git为例,搜索git plugin点击右下角的安 ...

  8. 【转】jenkins持续集成配置

    搭建jenkins持续集成服务器 1.jenkins简介 Jenkins,前身为Hudson,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,包括: 持续的软件版本发布/测试项目. 监控 ...

  9. Jenkins持续集成

    Jenkins持续集成 & .NET   最近受累于测试环境每次发布都很麻烦,而且我们有多个测试环境,因此专门抽时间做了Jenkins的配置和研究. 折腾了两天终于绿灯以后,先来个截图,Blu ...

随机推荐

  1. javascript 字符串数组链接

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. BufferedReader 中的 readLine()

    BufferedReader中的readLine()方法,API解释如下: Reads a line of text. A line is considered to be terminated by ...

  3. Caffe应用篇----文件格式转换

    网友文章: 我们手中有的一般都是图片数据,jpg.bmp格式等,但caffe常使用的数据是db格式(leveldb/lmdb),因此首先我们要将自己数据转换成caffe可运行的格式文件.别捉鸡,caf ...

  4. 通过类名获取spring里的Bean

    import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanFactor ...

  5. centos7.2环境elasticsearch-5.0.1+kibana-5.0.1+zookeeper3.4.6+kafka_2.9.2-0.8.2.1部署详解

    centos7.2环境elasticsearch-5.0.1+kibana-5.0.1+zookeeper3.4.6+kafka_2.9.2-0.8.2.1部署详解 环境准备: 操作系统:centos ...

  6. CAN总线(一)

    原文出处:http://www.cnblogs.com/jacklu/p/4729638.html 嵌入式的工程师一般都知道CAN总线广泛应用到汽车中,其实船舰电子设备通信也广泛使用CAN,随着国家对 ...

  7. 《CoffeeScript应用开发》学习:第五章 CoffeeScript中的类

    在CoffeeScript中定义类 在CoffeeScript中,使用class定义类,使用关键字new实例化对象. 给类绑定方法 class Airplane takeOff: -> cons ...

  8. openssh升级至7.2

    此处升级操作的原则是保留系统原有ssh服务,新安装高版本ssh服务 1.下载openssh源码包 http://www.openssh.com/portable.html 2.安装#tar zxvf ...

  9. ORACLE 自治事物

    ORACLE 自治事物 一.问题 (1)现象   一个表A,存在一个触发器,该触发器用来统计表A的数量,并将结果更新到B表.此时,java代码里面调用insert into select 语句,会发生 ...

  10. VC++ 实现VC程序启动时最小化到任务栏(完美解决闪烁问题)

    之前写的一个VC应用程序,是程序启动时就直接出现在任务栏, 窗体不出现,等用户点击任务栏图标再出现窗口.和一些防火墙什么的软件类似. 这种效果实现并不是很困难的,硬是找不到最好的.为什么呢? 首先,在 ...