本文基于当前最新的
LTS
版本2.164.1
,理论上适应于Jenkins 2.x全部版本。node
前往https://jenkins.io/download/ ,按需下载。如用于生产,建议下载Long-term Support (LTS)
版本,这样可以得到相对长期的维护;如想体验最新的功能,可尝试 Weekly
版本。git
能够直接下载特定系统专属的版本,也可下载 Generic Java package (.war)
。本文下载的是 Generic Java package (.war)
,这样对全部系统都通用。web
安装Jenkins很是简单,只需准备一个Tomcat(笔者使用的是Tomcat 8),而后将下载下来的 jenkins.war
丢到Tomcat的 webapps
目录中,而后启动Tomcat便可。本文,Tomcat使用的端口是 18080
。spring
Tomcat下载与安装本文不作赘述,请自行百度。docker
使用以下命令便可:浏览器
docker run -d -v jenkins_home:/var/jenkins_home -p 18080:8080 -p 50000:50000 jenkins/jenkins:lts
Jenkins启动片刻后,访问 http://localhost:18080/jenkins
,便可看到相似以下的界面:服务器
由界面提示可知,Jenkins设置了一个初始的管理员密码,该密码存储在 /Users/itmuch.com/.jenkins/secrets/initialAdminPassword
文件中——只需可找到该文件,将其内容复制到图示的输入框中便可。点击 继续
按钮,将会出现相似以下的界面:网络
按需选择便可,建议初学者选择 安装推荐的插件
,由于该选项包含了Jenkins经常使用的一些插件,基本知足平常使用;高手则可选择 选择插件来安装
,该选项更具灵活性。这里,笔者以 安装推荐的插件
为例,点击后,将会看到相似以下的界面:app
待插件安装完毕后(等待的时间长短视您的网络而定),将会看到相似以下的界面:webapp
Jenkins要求咱们建立第一个管理员帐户。填入相关信息,并点击 保存并完成
按钮,Jenkins便可初始化完成。
TIPS
安装完成后,若是访问
http://localhost:18080/jenkins
变成白板,并且没有反应,建议重启Jenkins服务器,并从新访问尝试。
下面,咱们来配置Jenkins。
点击系统管理
- 全局工具配置
,以下图:
将会看到相似以下图的界面。按需添加JDK、Git、Gradle、Maven、Docker等配置。配置比较简单,这里就不赘述了。
点击 系统管理
- 系统设置
配置管理员邮件地址:
邮件发送配置:
须要注意的是:邮件通知所使用的地址必须与管理员邮箱地址一致,不然将没法正常发送邮件!!
固然,Jenkins还有不少其余的配置选项,读者可自行在Jenkins左侧的系统管理 自行挖掘。
在Jenkins首页,点击开始建立一个新任务.
,以下图所示:
建立一个自由风格的项目,以下图所示:
点击肯定后,将会看到配置详情:
如图,请设置您想构建的项目的Git仓库地址、对应的帐号密码、想要构建的Git分支。通常来讲,源码库浏览器选择自动便可。
Maven配置
其中Maven版本
中所选择的 maven
,就是以前在全局工具配置
一节中的Maven配置名称。
若是想设置定时构建(例如:天天晚上八点构建):
配置构建完成后操做(以发送邮件为例)
点击构建项目,执行构建
Jenkins 2.x
内置了强大的流水线功能。
建立一个 流水线
类型的任务
填写Pipeline脚本:
node { def mvnHome stage('Preparation') { // for display purposes // clone源码 git 'https://gitee.com/itmuch/spring-cloud-yes.git' // 这里的maven-3.5.0必须跟全局工具配置中设置的Maven名称一致 mvnHome = tool 'maven-3.5.0' } stage('Build') { // Run the maven build if (isUnix()) { sh "'${mvnHome}/bin/mvn' clean install" } else { bat(/"${mvnHome}\bin\mvn" clean install/) } } stage('Email') { mail bcc: '', body: '构建成功。', cc: '511932633@qq.com', from: 'eacdy0000@126.com', replyTo: '', subject: '构建成功', to: 'eacdy0000@126.com' } }
如代码所示,咱们编写了一个流水线,该流水线包含三个阶段:
mvn clean install
命令,其中针对操做系统作了判断。511932633 @ qq.com
。Pipeline脚本功能很是强大,默认支持数十个指令!你可能担忧指令学习的成本,但这种担忧实际上是多余的——只需点击下图中的 流水线语法
按钮,就能够傻瓜化地使用Pipeline语法啦!