Jenkins安装(Linux版)

Jenkins是什么

Jenkins 是一个可扩展的持续集成引擎。

主要用于:

  •  持续、自动地构建/测试软件项目。
  • 监控一些定时执行的任务。

Jenkins拥有的特性包括:

  • 易于安装-只要把jenkins.war部署到servlet容器,不需要数据库支持。
  • 易于配置-所有配置都是通过其提供的web界面实现。
  • 集成RSS/E-mail通过RSS发布构建结果或当构建完成时通过e-mail通知。
  • 生成JUnit/TestNG测试报告。
  • 分布式构建支持Jenkins能够让多台计算机一起构建/测试。
  • 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
  • 插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。

 

Jenkins的目标

        Jenkins的主要目标是监控软件开发流程,快速显示问题。所以能保证开发人员以及相关人员省时省力提高开发效率。

        CI系统在整个开发过程中的主要作用是控制:当系统在代码存储库中探测到修改时,它将运行构建的任务委托给构建过程本身。如果构建失败了,那么CI系统将通知相关人员,然后继续监视存储库。它的角色看起来是被动的;但它确能快速反映问题。

特别是它具有以下优点:

  • Jenkins一切配置都可以在web界面上完成。有些配置如MAVEN_HOME和Email,只需要配置一次,所有的项目就都能用。当然也可以通过修改XML进行配置。
  • 支持Maven的模块(Module),Jenkins对Maven做了优化,因此它能自动识别Module,每个Module可以配置成一个job。相当灵活。
  • 测试报告聚合,所有模块的测试报告都被聚合在一起,结果一目了然,使用其他CI,这几乎是件不可能完成的任务。
  •  构件指纹(artifact fingerprint),每次build的结果构件都被很好的自动管理,无需任何配置就可以方便的浏览下载。

 

Jenkins安装

 

1.JDK安装

Jenkins的运行需要依赖jdk,所以在安装Jenkins之前我们得先把jdk装上。自行安装,这里不再介绍

2.Jenkins安装

以下四种方法任选一种,推荐第一种。

 

2.1 离线安装

## http://pkg.jenkins-ci.org/redhat/
wget http://pkg.jenkins-ci.org/redhat/jenkins-2.39-1.1.noarch.rpm ## 下载(也可以Windows下载再转过来)
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins.io.key ## 公钥
sudo yum -y install jenkins-*.noarch.rpm

2.2 在线安装

## http://pkg.jenkins-ci.org/redhat/
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
sudo yum -y install jenkins

2.3 基于 Tomcat 安装

安装并启动 Tomcat;
从官网下载 jenkins.war 至 $CATALINA_BASE/webapps,Tomcat 会自动部署;
浏览器访问:http://centos:8080/jenkins/

2.4 免安装方式

wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
sudo java -jar jenkens.war ## 启动服务,直至看到日志 `Jenkins is fully up and running`
curl http://localhost:8080/ ## Jenkins 已就绪

 

3.修改Jenkins配置文件

    现在Jenkins已经安装好了,不过启动之前最好稍微修改一下配置。默认情况是Jenkins是使用Jenkins用户启动的,但这个用户目前系统并没有赋予权限,这里我们将启动用户修改为root;另外Jenkins默认端口是8080,这个跟tomcat的默认端口冲突,我们也修改一下默认端口。

## sudo vim /etc/sysconfig/jenkins
JENKINS_USER="root" ## 原值 "jenkins" 必须修改,否则权限不足
JENKINS_PORT="8060" ## 原值 "8080" 
## 还有开启 HTTPS 相关参数,此处不打算开启,故不作说明

 

4.启动Jenkins服务

  • 用于centos7以下

#启动
service jenkins start 
#停止
service jenkins stop

  • 用于centos7以上

sudo systemctl enable jenkins
sudo systemctl restart jenkins

 

  • CentOS 7.x开始,CentOS开始使用systemd服务来代替daemon,原来管理系统启动和管理系统服务的相关命令全部由systemctl命令来代替。
  • 原来的 service 命令与 systemctl 命令对比
daemon命令 systemctl命令 说明
service [服务] start systemctl start [unit type] 启动服务
service [服务] stop systemctl stop [unit type] 停止服务
service [服务] restart systemctl restart [unit type] 重启服务

 

5.启动Jenkins服务

  • 在浏览器输入ip:8086进入Jenkins登录页面。

Jenkins安装(Linux版)_第1张图片

 

  • 进入登录页面后,Jenkins提示我们需要输入超级管理员密码进行解锁。根据提示,我们可以在/var/lib/jenkins/secrets/initialAdminPassword文件里找到密码。
  • 输入命令以找到密码。
tail /var/lib/jenkins/secrets/initialAdminPassword

 

  • 输入密码后,进入插件安装页面。点击Install suggested plugins,安装默认插件。
  • 安装完成后,页面自动进入了管理员账户注册页面。
  • 注册完账户,就进入主页面

Jenkins安装(Linux版)_第2张图片

 

6.全局安全设置

  • 默认情况下,任何用户都可以使用 Jenkins 进行发布。
  • 可以进入相关设置:系统管理 / 全局安全设置(Configure Global Security)
  • 选择 Jenkins专有用户数据库,不要选中 允许用户注册
  • 选择 登录用户可以做任何事,选中 Allow anonymous read access

 

Jenkins安装(Linux版)_第3张图片Jenkins安装(Linux版)_第4张图片

 

7.全局工具设置

  • 进入:系统管理 / 全局工具设置(Global Tool Configuration)
  • JDK 下不勾选“自动安装”,指定别名=JDK-1.8.0.121, JAVA_HOME=/usr/local/jdk1.8.0_121/jdk
  • Maven 下不勾选“自动安装”,指定别名=Maven-3.5.2, MAVEN_HOME=/usr/local/maven/apache-maven-3.5.2
  • 点击 Save 按钮。
  • 重启 Jenkins 后生效:

 

  • 用于centos7以下

service jenkins restart 
  • 用于centos7以上

sudo systemctl restart jenkins

Jenkins安装(Linux版)_第5张图片

Jenkins安装(Linux版)_第6张图片

8.插件安装

  • 进入:系统管理 / 管理插件 / 可选插件
  • 查找并勾选所需插件,点击“直接安装”;
  • 无需重启 Jenkins 插件即生效。如遇失败可重试或离线安装

9.Jenkins卸载

如果要重装,或者本机不需要 Jenkins,可卸载:

  • 用于centos7以下

sudo service jenkins stop 
sudo service jenkins disable 
sudo yum -y remove jenkins
sudo rm -rf /var/{lib,log,cache}/jenkins /usr/lib/jenkins /root/.jenkins
sudo rm -rf `sudo find /{etc,var,run} -name "jenkins*"`
  • 用于centos7以上

sudo systemctl stop jenkins
sudo systemctl disable jenkins
sudo yum -y remove jenkins
sudo rm -rf /var/{lib,log,cache}/jenkins /usr/lib/jenkins /root/.jenkins
sudo rm -rf `sudo find /{etc,var,run} -name "jenkins*"`

 

你可能感兴趣的:(Jenkins)