您的位置:新葡亰496net > 电脑系统 > 新葡亰496netJenkins服务器安装与配置,功能分析与

新葡亰496netJenkins服务器安装与配置,功能分析与

发布时间:2019-10-22 05:11编辑:电脑系统浏览(118)

    Jenkins安装

    浅析整理的本子是:Jenkins 2.7.4 版本。

    Jenkins是贰个卓越精良的四处集成服务器,本文主要介绍在CentOS系统中Jenkins的宗旨安装配备形式,供仿照效法。

    为了合营生产条件的jdk1.7本子,从官方网站获知,Jenkins必得是1.6从前的版本,因而下载jenkins-1.596.3-1.1.noarch.rpm到地头开展设置:

    Jenkins 的第一指标是监察和控制软件开辟流程,快捷展现难题,保障开拓职员以致相关人士省时省力进步开销效用。CI 系统在整整开拓进程中的首要功效是决定:当系统在代码存储库中探测到修改时,它将运行创设的任务委托给营造进程本人。尽管构建退步了,那么 CI 系统将通知相关人士,然后继续监视存款和储蓄库。它的剧中人物看起来是消极的;但它确能神速反映难点。

    一. 软件包:

    1. 下载apache-maven-2.2.1-bin.tar

      2. 下载jenkins: 列出了jenkins的富有release版本,请接受下载
    #移动到rpm包所在目录
    rpm -ivh jenkins-1.596.3-1.1.noarch.rpm
    

    Jenkins 特点:

    二. 安装

     

    正文假诺操效客商为gistech。

    1. 安装jdk,参考《CentOS系统中装置JDK1.6》。
    2. 安装tomcat7,参考《CenOS系统中安装汤姆cat7》。

    修改tomcat配置文件

    $ vi /home/gistech/tomcat/conf/server.xml
    

     

    修改8080端口的Connector节点,扩张如下配置

    URIEncoding="UTF-8"
    

     

    1. 安装maven
      1) 解压

      $ tar -zvxf apache-maven-2.2.1-bin.tar.gz

     

    2) 移动到别的目录

    $ mv apache-maven-2.2.1 /home/gistech/maven
    

    3) 配置处境变量
    编辑.bash_profile文件

    $ cd /home/gistech
    $ vi .bash_profile
    

     

    丰硕如下内容

    MAVEN_HOME=$HOME/maven
    PATH=$PATH:$HOME/bin:$MAVEN_HOME/bin
    
    export MAVEN_HOME
    export PATH
    

     

    使境遇变量生效

    $ source .bash_profile
    

     

    4) 验证是不是安装成功

    $ mvn -v   
    

     

    5) 配置maven
    编写maven的布置文件

    $ cd maven/conf
    $ vi settings.xml
    

     

    修改配置文件示比方下:

    <?xml version="1.0" encoding="UTF-8"?>
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
        <localRepository>/home/gistech/~m2</localRepository>
        <servers>
            <server>
                <username>admin</username>
                <password>password</password>
            </server>
        </servers>
        <mirrors>
            <mirror>
                <!-- This sends everything else to /public -->
                <id>nexus</id>
                <mirrorOf>central</mirrorOf>
                <url>http://192.168.120.247:8081/nexus/content/repositories/public</url>
            </mirror>
        </mirrors>
        <profiles>
            <profile>
                <id>nexus</id>
                <!-- Enable snapshots for the built in central repo to direct -->
                <!-- all requests to nexus via the mirror -->
                <repositories>
                    <repository>
                        <id>central</id>
                        <url>http://192.168.120.247:8081/nexus/content/repositories/public</url>
                        <releases>
                            <enabled>true</enabled>
                            <updatePolicy>always</updatePolicy>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                            <updatePolicy>always</updatePolicy>
                        </snapshots>
                    </repository>
                </repositories>
                <pluginRepositories>
                    <pluginRepository>
                        <id>central</id>
                        <url>http://192.168.120.247:8081/nexus/content/repositories/public</url>
                        <releases>
                            <enabled>true</enabled>
                            <updatePolicy>always</updatePolicy>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                            <updatePolicy>always</updatePolicy>
                        </snapshots>
                    </pluginRepository>
                </pluginRepositories>
            </profile>
        </profiles>
        <activeProfiles>
            <!-- make the profile active all the time -->
            <activeProfile>nexus</activeProfile>
        </activeProfiles>
    
        <pluginGroups>
            <!-- define the sonatype plugin group, so the nexus plugins will work without 
                typing the groupId -->
            <pluginGroup>org.sonatype.plugins</pluginGroup>
        </pluginGroups>
    </settings>
    

     

    在那之中localRepository节点表示私服中下载的jar包贮存路线,依照实际存放的门道修改。
    具有url节点中富含的地方:
    username、password节点表示登入nexus私服的客户名及密码。
    4、安装jenkins
    1) 复制到tomcat webapps目录

    $ mv jenkins.war /home/gistech/tomcat/webapps
    

     

    2) 配置情状变量
    编辑.bash_profile文件
    累计如下内容

    JENKINS_HOME=$HOME/tomcat/webapps/jenkins
    
    export JENKINS_HOME
    

     

    使情状变量生效

    source .bash_profile
    

     

    3) 启动tomcat,使用

    设置后,修改Jenkins配置文件:

    • Jenkins黄金时代切布置都得以在 web 分界面上做到。有个别配置如 MAVEN_HOME 和 Email,只需求配置一回,全体的花色就都能用。当然也得以透过退换 XML 实行布置。
    • 扶植 Maven 的模块 (Module),Jenkins 对 Maven 做了优化,由此它能自动识别 Module,每种 Module 能够配备成二个job。极度灵活。
    • 测量检验报告聚合,全数模块的测量检验报告都被集合在蒸蒸日上块,结果综上说述,使用任何 CI,那大约是件不恐怕完结的任务。
    • 构件指纹(artifact fingerprint),每回 build 的结果构件都被很好的自行管理,无需任何配置就能够方便的浏览下载。

    三、jenkins的宗旨配备

     1、全局配置

    单击首页左侧的“系统管理”,踏入“系统设置”,在此对jenkins举行全局设置
    1) JDK安装。如果没有读抽出连串变量,就手动设置好小名和JAVA_HOME就能够了
    2) Maven同理
    新葡亰496net 1
    3) 配置管理员邮件布告
    安插格局如下图:
    新葡亰496net 2
    配备完结后方可点击"通过发送测量检验邮件测量试验配置"按键实行测验。
    2、创建job
    1) 在页面中式茶食击“新job”,输入职分名称,选择“营造一个maven2/3项目”,如下图:
    新葡亰496net 3
    2) 点击ok按键步向职分陈设页面,首先配置项指标svn地址,如下图:
    新葡亰496net 4
    3) 配置maven的pom文件地点,能够接收相对路线(相对于svn地址库中的地点),如下图:
    新葡亰496net 5
    4) 配置maven编译参数,如下图所示不举行单元测验:
    新葡亰496net 6
    至于maven的编写翻译参数可参看Maven基本命令
    3、邮件公告
    构建邮件公告铺排如下图,Recipients栏目中加多必要发送邮件通告的邮件地址。
    新葡亰496net 7
    4、定时创设
    营造触发器能够配备营造的年华,若是急需定时创设,能够挑选 Build periodically,日程表参数解释如下:

    • 先是个参数代表的是分钟 minute,取值 0~59;
    • 其次个参数代表的是时辰 hour,取值 0~23;
    • 其四个参数代表的是天 day,取值 1~31;
    • 第三个参数代表的是月 month,取值 1~12;
    • 终极七个参数代表的是星期 week,取值 0~7,0 和 7 都是象征周天。

    如0 * * * * 表示的正是各种小时的第 0 分钟施行一次创设。
    新葡亰496net 8
    5、版本更新营造
    众多情景必要jenkins定期轮询版本库,只要有版本更新就接触构建,jenkins提供了Poll SCM协助版本更新塑造,如上海体育地方,配置参数与定期创设的参数同样,如*/5 * * * *代表每间距5分钟轮询贰次,检查版本库是还是不是更新。

    vi /etc/sysconfig/jenkins
    

    情况的搭建

    听他们讲实况修改以下两处,日常tomcat已占用8080和8009端口:

    安装JDK

    yum install java-1.6.0-openjdk-devel*
    yum install java-1.7.0-openjdk-devel*
    

    新葡亰496net 9  新葡亰496net 10

    配置Git

    • 设置 user.name 与 user.email。
    • 浮动密钥:ssh-keygen -t rsa -C “email”,Git服务器增加SSH Key。

    记得在防火墙中开启对应端口,然后重启Jenkins:

    安装maven

    • 位居普通客户能够访谈的目录下。
    service jenkins restart
    

    布局遭受变量

    • JAVA_HOME
    • MAVEN_HOME
    • CLASSPATH
    • PATH

    开垦浏览器,输入:端口即可看见Jenkins已经起步:

    安装 Jenkins

    • 官方网站下载 jenkins-2.7.4-1.1.noarch.rpm 包,进行设置。
    rpm -ivh jenkins-2.7.4-1.1.noarch.rpm
    
    • 设置到位后,在 /var/lib/jenkins 目录中得以望见 jenkins.war。执行 新葡亰496netJenkins服务器安装与配置,功能分析与整理。java -jar jenkins.war 安装解压,重启服务器。

    留心:不重启不能够访谈首页。能够关闭 HTTP 访问方式,展开 HTTPS 访问形式。

    java -jar jenkins.war -httpsPort=8443 -httpPort=-1
    
    • 通过 service jenkins start 启动 Jenkins 服务。
    • 修改 /etc/sysconfig/jenkins 配置文件中 JENKINS_USEPRADO 为 root。让 Jenkins 以 root 权限运营,倘若延续 Jenkins 调用脚本没有须求 root 权限能够毫无修改。(修改前先甘休 Jenkins 服务 service jenkins stop,修改后再起步)

    不修改为 root 权限,后续脚本中只要波及 root 目录或然权力的状态,将唤起未有权力。

    • 闭馆防火墙,或然开放 8080 端口。

    小心:不闭馆防火墙,不可能访问首页。

    • 通过 http://localhost:8080 能够观望 Jenkins 首页。
    • 报到首页需求输入密码,能够在文书 /var/lib/jenkins/secrets/initialAdminPassword 中查看见。
    • 输入后提示创建系统助理馆员顾客,创制后就可以登入。
    • Configure Global Security → 访问调整 → 安全域
      • 能够安装允许客户注册
      • 授权战略能够选择
    序号 授权策略
    1 任何用户可以做任何事(没有任何限制),包括为登录的用户也可以做相关操作。
    2 登录用户可以做任何事(登陆后的用户都拥有管理员的权限)
    3 遗留模式,登录的用户只有查看的权限(除管理员以外)。
    4 安全矩阵,统一配置授权策略。
    5 项目矩阵授权策略,跟安全矩阵配置完全相同,唯一区别在于可以在Job的配置页面再次配置。(选择Job → General → 启用项目安全)

    新葡亰496net 11

    Jenkins 完结持续集成相关配置

     

    JDK 相关陈设

    • Global configure Tools

    配备 JDK 安装目录(JAVA_HOME)

    JDK 配置成功的动静下,修改 JDK 路线,通过分界面修改,重启 Jenkins,或然存在无效的景色。能够向来改造 config.xml 配置文件中的 JDK 路线,再重启 Jenkins 后生效。推荐应用 1.7 版本,因为一些插件须要 JDK1.7 的支撑,比方:Monitoring 插件。config.xml 在 /var/lib/jenkins 目录下。JDK 选拔自动下载,会见世卡死状态,是因为 Jenkins 在未开掘 JDK 的图景下,会自行下载,然而 Oracle 对程序自动下载做了限定,会招致下载失利。

    Jenkins配置

    Git 相关陈设

    • 系统管理 → 管理插件 → 可选插件选取 Git plugin 进行 git 插件安装。
    • 系统管理 → 系统安装 → Git plugin(Git plugin插件安装后才有)
      新葡亰496net,配置 Global Config user.name ValueGlobal Config user.email Value
    • 在系统中生成访谈 Git 的密钥文件。
    • 拷贝生成的密钥文件 id_rsaid_rsa.pub/var/lib/jenkins/.ssh 目录下,并且通过 chown jenkins:jenkins 设置为 jenkins 权限。

    新葡亰496netJenkins服务器安装与配置,功能分析与整理。留心:不拷贝至 /var/lib/jenkins/.ssh 目录下也足以,可是密钥文件所在目录必得有 jenkins 访谈权限。

    • Credentials

      • 创办密钥,Scope 选用 Global。
      • username 填写 git 登入名称。
      • private key 选择 From a file on Jenkins master,填写 /var/lib/jenkins/.ssh/id_rsa。
      • passphrase 填写 git 密码。
    • Global configure Tools
      布局GIT的实行文书目录(/usr/bin/git)。

    至于Jenkins的陈设,官方网站文书档案和网络博文已经讲得很详细了,这里我们只介绍最大旨的布局,能够尽快让Jenkins职业起来。

    Maven 相关安顿

    • 系统管理 → 系统装置 → 全局属性
      • 勾选 Environment variables。
      • 添加键:MAVEN_HOME,值 maven 的安装目录。
      • 添加键:PATH,值 $PATH:$MAVEN_HOME/bin。

    静心:必需配备,不然 Jenkins 运营脚本的情况变量中,无法加载maven目录。进行过以下尝试:

    序号 描述
    1 修改 etc/bashrc 文件,增加环境变量,Jenkins 运行无法获取 MAVEN_HOME。
    2 修改 etc/profile 文件,增加环境变量,Jenkins运行无法获取 MAVEN_HOME。
    3 修改 etc/passwd 文件中 jenkins 用户权限,Jenkins运行无法获取 MAVEN_HOME。
    4 Jenkins 以 root 权限运行,Jenkins 运行无法获取 MAVEN_HOME。
    5 将脚本放到 /var/lib/jenkins 目录下,Jenkins运行无法获取 MAVEN_HOME。
    • Global configure Tools
      • Maven Configuraction,配置settings.xml 所在路子。
      • 布局 Maven 安装目录(Maven安装目录须求放在 jenkins 能够访问的目录,否则会有警示提醒)。

    点击创设一个新职分,输入任务名称,这里以maven项目为例:

    创设项目

    • 新建 → 营造多少个Infiniti制风格的软件项目
      • 项目名称填写
      • 源码管理 → Git → Repositories,填写 Repository U昂CoraL,密钥选取早先创设的密钥。
      • Branches to build 中填写 Git 下载分支,可加多五个。(比方:*/develop)
      • 营造触发器 → Poll SCM,按期轮询(查看 Git 是还是不是有立异内容)。(举例 H/5 * * * *,每 5 分钟)。
      • 塑造 → Execute shell → Command,能够加上 Git 下载代码后的剧本操作。
      • 始建项目成功后,能够在 My Vews 视图中见到。点击表格最终一列的创设Logo,能够扩充项目创设。

    新葡亰496net 12

    长间距登陆推行 shell

    • 下载安装 Publish over SSH 插件。

    • 系统管理 → 系统安装 → publish over ssh。

      • 填写 Passphrase:远程登入密码。
      • SSH servers→Name:定义一个 SSH 名称。
      • SSH servers→Hostname:远程 IP 地址。
      • SSH servers→Username:登录名。
      • SSH servers→Directory:远程目录(也是远程机的根目录)。
      • 填写实现能够通过 Test Configuration 举行再三再四测量检验。
    • 创设项目中选拔

      • 勾选创设情况 → Send files or execute commands over SSH after the build runs
      • SSH Publishers → SSH Server Name,选用上一步中开创的 SSH 服务名称。
    • SSH Publishers → Transfers

      • Transfer Set Source files:发送到远程的公文在地点绝对于专门的学业空间的相对路线
        (举例:职业空间 /var/lib/jenkins/workspace/foo/,填写target/*.zip,相对路线就是/var/lib/jenkins/workspace/foo/target/*.zip),能够多个,私下认可,号隔离。
      • Remove prefix:移除目录,是目的性 Transfer Set Source files 中定义的目录,可是却意义于远程目录。填写 target,意思是将 target/*.zip 中的 target 去掉,改为 *.zip。然后效率于上一步的中远间距目录上,举个例子远程目录是 /root,那么相对路线就是 /root/*.zip。
      • Remove directory:远程目录,绝对于远程目录的相对路线。不填写就与长途目录旭日东升致。
      • Exec command:远程实践的 shell 命令。
      • Jenkins内置景况变量:
    变量名称 含义 返回示例
    BUILD_NUMBER 构建任务的编号 6
    BUILD_ID 构建任务的ID 6(1.597版本后,与BUILD_NUMBER相同)
    BUILD_DISPLAY_NAME 构建任务显示名称 #6
    JOB_NAME 构建项目名称 bar/foo
    JOB_BASE_NAME 构建最底层项目名称 foo
    BUILD_TAG 构建任务标签 jenkins-${JOB_NAME}-${BUILD_NUMBER}
    jenkins-bar/foo-6
    NODE_NAME 是构建在宿主上,则master,节点上则名称 master或者节点名称
    NODE_LABELS 节点分配表 master或者节点分配表(空格隔开)
    WORKSPACE 工作空间 /var/lib/jenkins/workspace/foot/
    JENKINS_HOME Jenkins 安装目录 /var/lib/jenkins/
    JENKINS_URL Jenkins 主页 http://server:port/
    BUILD_URL 构建任务地址 http://server:port/jenkins/job/foo/6/
    JOB_URL 构建项目地址 http://server:port/jenkins/job/foo/
    EXECUTOR_NUMBER 构建状态 0:正在执行,1:没有执行

    这么些意况变量可以在 Shell 或 Batch 脚本中被接纳,以 JOB_NAME 处境变量为例:

    序号 说明
    1 在 Shell 中:$JOB_NAME。
    2 在 Batch 中:%JOB_NAME%。
    3 在 Ant 插件中:$JOB_NAME。
    4 在 Ant 的 build.xml 中:${JOB_NAME}。
    5 在 Maven 的 pom 中使用:${env.JOB_NAME},Maven 中引入环境变量的值。
    引入 pom 中的变量通过 project.*,引入 settings.xml 中的变量,用settings.*。
    • SSH Publishers → Transfers → 高级
      • Exclude files:排除的文件(传输目录的时候解除,能够应用通配符)。
      • Pattern separator:分隔符,设置 Transfer Set Source files 的分隔符,设置了地方也须求改。
      • No default exclude:避免暗中认可的消除法则。(暗中同意排除 .svn .git 等等文件)。
      • Make empty dirs:创立空的文书夹。(私下认可当文件存在时,才创立文件夹寄存),勾选后,无论存不设有都创立目录文件夹。
      • Flatten files:只传递文件,不传递目录(这里指本地,不包罗远程服务器端)。
      • Remote directory is a date format:远程目录成立带日期的目录。(须求在 Remove directory 中陈设格式)。
      • Exec timeout(ms):脚本运维超时时间(纳秒)。
      • Exec in pty:模拟三个终极施行脚本。

    输入项目名称和描述:

    执行 Jenkins CLI 命令

    • 系统管理 → Configure Global Security → 启用安全
      • TCP port for JNLP agents 选用钦点端口,定义三个端口。采纳的轻松端口,试行命令也会提醒端口未安装的荒谬。
      • 切切实实命令实践情势,能够在系统管理 → jenkins CLI 中查阅。
      • 每一句实践命令的终极都急需跟 --username 顾客名和 --password 密码,参数。

    新葡亰496net 13

    邮件通告铺排

    • 系统管理 → 系统设置 → 邮件布告

      • SMTP 服务器:配置 SMTP 服务器。(不填私下认可本地运转服务器)
      • 用户暗中同意邮件后缀:注册客商邮件只需填写顾客名就能够,后缀会加该后缀,如若填写,则会覆盖该配置。
      • SMTP 端口:填写 SMTP 端口。
      • Test configuration:能够实行邮件测量检验。
    • 创设的花色中 → 营造后操作 → E-mail Notification

      • Recipients:邮件列表,三个人用立陶宛共和国(Republic of Lithuania)语逗号间隔。

    源码处理应用svn,此处须要留意svn地址应直接提交开垦分支,而不是风流倜傥切仓库,不然无法营造:

    监控

    • 创设状态

    新葡亰496net 14

    创设状态

    颜色 状态
    蓝色 完成构建,被认为是稳定构建。
    黄色 完成构建,被认为是不稳定的构建。
    红色 构建失败。
    灰色 禁用了构建。
    • 创设平安

    新葡亰496net 15

    打造平安

    图例能够在:http://localhost:8080/legend 中查看。

    新葡亰496net 16

    插件相关

    • Email Extension Plugin
      可以扩展邮件功用。举个例子能够自定义邮件标题或内容的模板。

    推荐模版:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
    </head>
    <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
    <table width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
    <tr>
       <td>(本邮件是程序自动下发的,请勿回复!)</td>
    </tr>
    <tr>
       <td><h2><font color="#0000FF">构建结果 - ${BUILD_STATUS}</font></h2></td>
    </tr>
    <tr>
       <td><br /> <b><font color="#0B610B">构建信息</font></b> <hr size="2" width="100%" align="center" /></td> 
    </tr> 
    <tr>
    <td> 
         <ul> 
              <li>项目名称&nbsp;:&nbsp;${PROJECT_NAME}</li>
              <li>构建编号&nbsp;:&nbsp;第${BUILD_NUMBER}次构建</li>
              <li>SVN&nbsp;版本:&nbsp;${SVN_REVISION}</li>
              <li>触发原因:&nbsp;${CAUSE}</li>
              <li>构建日志:&nbsp;<a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
              <li>构建&nbsp;&nbsp;Url&nbsp;:&nbsp;<a href="${BUILD_URL}">${BUILD_URL}</a></li>
              <li>工作目录&nbsp;:&nbsp;<a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
              <li>项目&nbsp;&nbsp;Url&nbsp;:&nbsp;<a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
         </ul> 
    </td> 
    </tr>
    <tr>
         <td>
              <b><font color="#0B610B">Changes Since Last Successful Build:</font></b>
              <hr size="2" width="100%" align="center" />
         </td> 
    </tr> 
    <tr> 
         <td>
             <ul> 
                  <li>历史变更记录 : <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a></li>
             </ul> ${CHANGES_SINCE_LAST_SUCCESS,reverse=true, format="Changes for Build #%n:
             <br />%c<br />",showPaths=true,changesFormat="<pre>[%a]<br />%m</pre>",pathFormat="&nbsp;&nbsp;&nbsp;&nbsp;%p"} </td> 
    </tr>
    <tr>
         <td>
              <b>Failed Test Results</b> <hr size="2" width="100%" align="center" />
         </td> 
    </tr>
    <tr>
         <td>
              <pre style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">$FAILED_TESTS</pre> <br />
         </td>
    </tr>
    <tr>
         <td><b><font color="#0B610B">构建日志 (最后 100行):</font></b> <hr size="2" width="100%" align="center" /></td>
    </tr> <!-- <tr> <td>Test Logs (if test has ran): <a href="${PROJECT_URL}ws/TestResult/archive_logs/Log-Build-${BUILD_NUMBER}.zip">${PROJECT_URL}/ws/TestResult/archive_logs/Log-Build-${BUILD_NUMBER}.zip</a> <br /> <br /> </td> </tr> --> 
    <tr>
    <td>
         <textarea cols="80" rows="30" readonly="readonly" style="font-family: Courier New">${BUILD_LOG, maxLines=100}</textarea> 
    </td> 
    </tr>
    </table>
    </body>
    </html>
    
    • Parameterized Trigger Plugin
      能够依赖现已到位营造的结果,触发新Job或然传递参数(参数能够铺排成 properties 文件)。具体安插在创设后操作中。

    • Publish Over FTP Plugin 与 FTP publisher Plugin
      能够将构建的产物(比方:Jar)发表到 FTP 中去。公用配置在系统安装中,具体计划在构建后操作中。需求配备 IP、客商名、密码、端口、服务器目录、超时时间等。

    • Jenkins Job Configuration History Plugin
      能够记下配置改换。(顾客、改变时间、更换内容等)。

    创设触发器,使用轮询SVN更新,只要检验到有立异就接触创设,日程表是轮询周期,这里安装为50分钟,如图所示:

    忘掉密码补救

    • 修改 JENKINS_HOME/users 目录中 config.xml 文件中 passwordHash 标签中内容为:
    #jbcrypt:$2a$10$DdaWzN64JgUtLdvxWIflcuQu2fgrrMSAMabF5TSrGK5nXitqK9ZMS
    

    上边内容是密码:111111 的加密内容。修改后再登陆就能够。

    新葡亰496net 17

    布满式创设

    能够让同豆蔻年华套代码,在不相同的条件(Windows,Linux 系统)中,编写翻译与测量检验等。最后将营造的产物自动拷贝到主节点。

    • 系统管理 → 管理节点 → 新建节点

    在意:不建议接受标点符号和华语(汉语命名未有失水准,但 Job 中不可能援用)

    能够新建节点或从已存在的节点中复制风度翩翩份配置(要是存在节点才会来得)

    构建那如火如荼栏,提醒Jenkins供给Maven安装路线,点击the system configuration:

    节点配置项如下:

    • 节点名称。
    • 节点描述。
    • 最大何况构建数量(必得为数字)。
    • 节点目录。

    留意:若是目录不设有,会自行创设目录。你必得对该目录有读写权限,否则会报错:

    hudson.util.IOException2: Failed to copy xxxx
    
    • Labels:标识(又叫做标签)用来对多节点分组,标志之间用空格分隔。

    • 运转方法。

      • Launch agent via Java web Start。
        透过 Java Web Start 连接节点 (适用于全数扶植Java程序的种类)。
      • Launch slave via execution of command on the Master
        透过主节点的调控台连接节点,可以实践 shell 脚本,可是脚本必要团结写。(为了便利节点晋级而提供的主意)。
      • Let Jenkins control this Windows slave as a Windows service
        让 Jenkins 节点增多到 Windows 服务中。接纳这种运市场价格势,那么那个种类不能够登入别的客商。
    • Availability

      • Keep this slave on-line as much as possible
        尽量的维持节点在线。
      • Take this slave on-line according to a schedule
        依据时间表在线。Scheduled Uptime:当先任务时间后推移多少分钟离线。假使此数值高于在线总时间(单位:分),就能一向维持在线(必得为数字)。
      • Take this slave on-line when in demand and off-line when idle
        让 Jenkins 依照供给自动三番五次或然离线。In demand delay:假诺有Job要求在那节点创设,须要在职分队列等待多久才会步入职分景况进行营造(必得为数字)。Idle delay:多少分钟内若无Job须要营培育离线(必得为数字)。
    • Environment variables
      安顿节点的情形变量(与主节点同样)。

    • Tool Locations
      配备工具,这里是节点特殊配备,会覆盖主节点的工具配置,好处是在不改动Job配置的状态下,不一致情形(如:Windows 和 Linux)Job 配置通用。

    新葡亰496net 18

    搬迁和备份

    只必要迁移或然备份 JENKINS_HOME 中内容就可以。

    找到Maven栏目,点击Maven安装按键,在输入框中输入名称和路径:

    新葡亰496net 19

    保留后,不要焦急运营创设,不然会因权限不足而一点计谋也施展不出创造/删除目录,须求先将jenkins加入到sudoer名单中:

    vi /etc/sudoers
    

    如图,允许jenkins客商同意别的命令:

    新葡亰496net 20

    接下去就足以点击侧面的导航栏的“立即营造”,再依附创设提示一步一步排查难点:

    新葡亰496net 21

    平日说来为了越来越好的在pre-build和post-build阶段施行shell脚本,供给jenkins以root身份施行shell命令.

    修改Jenkins配置文件:

    vi /etc/sysconfig/jenkins
    

    $JENKINS_USER设为root:

    新葡亰496net 22

    然后将Jenkins相关路径的主人修改为root:

    chown -R root:root /var/lib/jenkins
    chown -R root:root /var/cache/jenkins
    chown -R root:root /var/log/jenkins
    

    重启Jenkins,能够看出客户已转移:

    service jenkins restart
    ps -ef | grep jenkins
    

    本文由新葡亰496net发布于电脑系统,转载请注明出处:新葡亰496netJenkins服务器安装与配置,功能分析与

    关键词: