侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

Jenkins安装和配置

2023-12-23 星期六 / 0 评论 / 0 点赞 / 149 阅读 / 19190 字

Jenkins安装和配置 1. Jenkins下载与安装 1.1 安装环境 必要的环境是JDK 1.7以上,如果没有安装jdk,Jenkins无法启动。如果安装在windows上,推荐使用window

Jenkins安装和配置

1.      Jenkins下载与安装

1.1     安装环境

必要的环境是JDK 1.7以上,如果没有安装jdk,Jenkins无法启动。如果安装在windows上,推荐使用windows server。否则某些插件可能运行缓慢

1.2     Jenkins下载

下载地址:http://jenkins-ci.org/

Jenkins可以下载war包,然后在web容器中直接运行。但作为持续集成环境不推荐此种方法。推荐下载安装包,将Jenkins安装为系统服务,随系统启动。

下载Native packages:

1.3     Jenkins安装

下载之后是安装包,直接点击msi结尾的安装即可。使用Native package会自动安装为Windows服务。

安装完成后,在浏览器输入 yourIpAddress:8080访问。如果看到类似如下界面,说明安装成功。

( 刚安装时job和节点列表是空的)

注:如果需要更改启动端口或者启动参数,打开Jenkins安装目录,找到Jenkins.xml,打开。找到类似节点:

<arguments>                

-Xrs-Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar

"%BASE%/jenkins.war" --httpPort=8080

</arguments>

更改你需要的参数,然后在windows服务管理器中重启Jenkins服务即可。

2.      Jenkins基础配置

2     

2.1      必要插件安装

安装完Jenkins后,建议先配置插件,再配置系统设置。因为Jenkins很多功能由插件实现。并且需要在系统设置中配置。

点击系统管理按钮:

看到如下界面:

点击管理插件,进入如下界面:

转到 可更新 选项卡。系统会自动检查更新。如果列表是空的,等5分钟左右系统会自动刷新。全选后点击直接安装。系统会自动开始下载插件。

由于网络原因,下载插件可能会出错。如果提示部分插件没有安装成功,等其他插件安装完成后,进入可更新选项卡再次全选安装即可。安装完成后,在浏览器地址栏后面加上restart,即可远程重启Jenkins,类似于192.168.1.8:8080/restart。

注:安装插件时显示连接不上Google不会影响插件安装,可忽略。

注2:只有在把Jenkins安装为系统服务时,Jenkins才能进行远程重启。

注3:Jenkins这里有一个bug但是很难重现。即重启之后无法再次启动。如果重启后发现Jenkins无法启动,在服务器端使用Jenkins Native packages(安装包),安装时选修复即可。原有的配置和工程都会被保留不会丢失。

插件全部更新完成之后,可更新列表会为空。

系统会自动不定期检查插件更新,如果要手动检查。在可选插件底部点击立即获取即可。

2.2      Jenkins全局设置

2.2.1   路径配置

更新完插件后,转到系统管理。选择系统设置:

界面如下:

点击高级按钮:

会多出根目录设置。建议不使用默认值,将其设置在便于查找的目录下。在设置时,可以使用以下三个环境变量:

${JENKINS_HOME}:                Jenkins 安装目录

${ITEM_ROOTDIR}:                默认的工作空间地址

${ITEM_FULL_NAME}:           项目名

设置根目录时,需包含后两个环境变量之一,否则以后工程无法移植并且管理混乱。

建议的设置如下:

工作空间根目录:c:/Jenkins/workspace/${ITEM_FULL_NAME}

构建记录根目录:c:/Jenkins/buildRecord/${ITEM_FULL_NAME}

完成后如图:

剩下的配置建议如图配置:

注:执行者数量建议不超过本机CPU核心数。如果CPU低于i3,建议值为1。即不允许同时执行多个构建避免系统异常或者死机。

注2:master即Jenkins安装在的服务器至少需要Intel i系列或者同等性能CPU。否则后期静态检查插件可能工作缓慢甚至无法工作(静态检查插件最后的图形化报表功能由master承担且对CPU性能要求较高)。

2.2.2   JDK及工具安装

在安装之前,确保Jenkins所在机器已经安装好JDK(可以多版本),Maven,Ant等工具。Jenkins中只提供调用本地工具的插件,并没有提供这些工具。所需工具必须手动安装。

找到下图所示的工具设置:

以JDK安装为例:

点击JDK安装,再点击新增JDK:

出现如下界面:

不要勾选自动安装(自动安装需要oracle账号且不宜自行配置),出现下图界面:

别名填写此JDK的名字,此别名用于以后系统向用户展示,建议使用简单易懂的别名。例如JDK_1.7。JAVA_HOME填写jdk的安装目录。类似于下图:

可以增加多个JDK:

注:配置多个JDK之后,项目配置中可以选择要使用的JDK,如果没有选择,默认的是操作系统环境变量配置的JAVA_HOME指向JDK。

注2:如果使用maven,需要在pom.xml中,maven-compile-plugin下添加fork。才能跟随系统JDK。否则在Jenkins中会报错。No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK。在Jenkins中指定jdk版本也可以。

MAVEN,ANT等工具的安装和JDK步骤相同。

MAVEN安装完之后,还需要配置以下选项:

指定maven的配置文件。如果没有指定,默认使用安装MAVEN的/conf/下的settings.xml文件。

指定maven执行参数,没有需要可不填。

指定本地maven仓库位置。这里的Default并不一定指向。/m2/repository,而是指向settings.xml中指定的目录。

 

2.2.3   邮件配置

Jenkins自带的邮件功能较弱,建议使用功能更强的扩展插件。

转到插件管理界面,在可选插件里搜索Email Extension Plugin,选中安装。

安装完成后转到设置,找到Extended E-mail Notification,设置项如下:

首先配置smtp服务器,点击高级按钮,选中Use SMTP Authentication。输入smtp服务器地址,邮箱名,密码。

 

然后配置字符集为UTF-8,再配置邮件格式,建议选择HTML,可以使邮件内容更加丰富,携带更多信息。

默认收件人和默认回复人:

在邮件标题和邮件内容中可以使用很多内置的变量。下面是一个参考的配置:

邮件标题:

构建通知:$PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!

邮件内容:

<hr/>

(本邮件是程序自动下发的,请勿回复!)<br/><hr/>

项目名称:$PROJECT_NAME<br/><hr/>

构建编号:$BUILD_NUMBER<br/><hr/>

svn版本号:${SVN_REVISION}<br/><hr/>

构建状态:$BUILD_STATUS<br/><hr/>

触发原因:${CAUSE}<br/><hr/>

构建日志地址:

<a href="${BUILD_URL}console">${BUILD_URL}console</a><br/><hr/>

变更集:${JELLY_SCRIPT,template="html"}<br/><hr/>

注:点击Content Token Reference 后面的问号,可以看见所有可以使用的变量。

 

注2:使用插件之后,系统自带的邮件服务可以不配置。

注3:使用上述配置发送的邮件如下图:

2.3    Jenkins节点配置

Jenkins支持master/slave结构,可以进行分布式构建。节点之间通过网络连接。

在系统设置中选中节点管理:

在新界面右侧,点击新建节点。

填写节点名称,并且选中Dumb Slave,表明新建节点:

在之后的配置中,填写执行者数量,远程工作目录。

Jenkins通过节点标签来分配任务。在标签中填写此节点执行的任务,然后将用法换成只允许执行绑定到这台机器的任务,就可以实现不同节点的任务分配。例如,标签填写:WebService WebApps(不同标签使用空格分隔),在构建时,只有具有这两个标签之一的任务才会执行在这个节点上。

注:标签可以根据实际项目分部来构造,例如一台slave标签打上Android,一台打上WebService。

启动方法建议选择Lunch slave agents via JAVA web start。此方法可以使用在任何平台上,并且可以随系统启动。

如果此节点上要运行master没有的工具,或者工具的位置和全局设置不同,点击Tool Locations,手动输入工具路径。

完成后之后点击save。

之后系统会自动条转到节点界面,如图:

刚才配置的节点现在显示不在线状态。使用要作为此slave的计算机,使用浏览器访问这个界面,点击节点。会看到如下界面:

点击lunch,会开始下载

下载之后双击打开。

出现如下界面,说明成功连接:

之后点击file->install as a Service,可以把slave-agent安装成系统服务。随系统启动。

此时回到Jenkins节点管理界面,如果看到节点成功连接,说明配置成功。

注:如果无法成功连接,显示路径不正确。请回到系统全局设置,查看如下配置项:

检查Jenkins URL是否填写正确,http://不能省略,也不能使用localhost。

2.4    更新Jenkins

当Jenkins有可用更新时,在系统管理界面会有如下提示:

点击自动升级版本即可。升级后Jenkins会保留上一个版本的备份,出现问题可降级。

3.      创建工程

3     

3.1     Maven工程(推荐)

点击新建按钮:

出现如下界面:

填写项目名称。下面列表的选择可以选择自由风格的项目,也可以选择maven项目。这里强烈建议直接使用MAVEN项目。在自由风格项目编译maven时有一个,系统执行maven时,使用的是mvn.bat –xx xxxxxx,但是maven/bin中mvn后缀不是.bat,所以会报错。想解决必须使用windows batch脚本,如果涉及JDK版本指定等,会变得非常不便。

选择MAVEN项目,点击ok:

要注意的几个选项:

JDK:选择项目使用的jdk版本,默认是操作系统环境变量指定的

Restrict where this project can be run:选中后后要求输入标签,系统会根据标签匹配可以执行此工程的slave节点。

源码管理选择SVN,在下方输入用户名密码。

如果这里显示不正确,请到系统全局设置中把svn版本选为1.8。

触发器选择poll scm:

日程表的具体规则点击后方的问号可以看到。这里推荐使用H 23 * * *这样的格式。代表由系统负责负载均衡,在每天23点开始检查svn版本库,有变化执行构建,没有不执行。并且系统会自动根据节点使用情况决定构建开始时间。

在build中填写构建的目标,例如 compile或者package。

在构建后步骤中勾选Editable Email Notification。

出现如下界面:

默认配置和全局配置一样。没有特别需要可以不更改。一般只需要新增收件人。注意使用逗号分隔收件人。(英文逗号)

添加构建日志作为附件:

点击advanced settings:

出现Triggers列表:

可以自定义邮件的触发器。例如如下的配置:

代表每次构建之后都发邮件给定义好的收件人。

注:关于这里的developer,是系统自动根据svn用户的信息,在其之后拼接smtp服务器的后缀,构建出的电子邮件地址。例如A项目svn的提交人有b,c,d,smtp服务器:[email protected],那developer 就是[email protected][email protected][email protected]

最后按保存即可。

最后在工程中按立即构建,查看构建结果。

3.2    ANT工程(兼容)

与Maven工程大致相同。

不同点主要在:

创建时选择自由风格的项目

构建时需要自己添加构建步骤。选择Invoke Ant

然后自己输入Ant的target。

广告 广告

评论区