1 jenkins介绍

- 在说jenkins之前我们先来看看一个互联网公司上线的一个流程:

以共享单车为例:(充值-交押金-骑车)-开始设计产品成型-开发人员开发代码-测试人员测试功能-运维人员发布上线 来看张图来更好的理解下

05e58df5a43cec597c1a96038904dcdc.png-wh_

持续集成 (Continuous integration,简称CI)  

持续交付(Continuous delivery) 交付有两种含义一种是代码写好后交付给测试人员开始测试,第二种是成型后交付给用户开始使用     

持续部署(continuous deployment) 

如上持续的操作我们需要搞成自动化,可是应该怎么做呢?于是有了一款工具也可以很轻松的帮我们完成持续的集成,交付,部署。那就是接下来介绍的jenkins  

- 官网 https://jenkins.io

- Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)基于web界面的平台。

- Jenkins是一个工具集,提供了各种各样的插件

- 官方文档 https://jenkins.io/doc/

2 jenkins 安装 

简单的介绍了jenkins现在来安装一下吧

- 环境:centos7 

内存不小于256M,不低于1G磁盘,jdk版本>=8 (我们用的是openjdk)因为jenkins是由java开发的,基于jdk所以需要安装jdk)  

开始安装:

[root@chy01 ~]# yum install -y java-1.8.0-openjdk
//这里我们安装的是openjdk
[root@chy01 ~]# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo //下载jenkins的yum源 
--2017-11-20 19:32:52--  https://pkg.jenkins.io/redhat/jenkins.repo
正在解析主机 pkg.jenkins.io (pkg.jenkins.io)... 52.202.51.185
正在连接 pkg.jenkins.io (pkg.jenkins.io)|52.202.51.185|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:71
正在保存至: “/etc/yum.repos.d/jenkins.repo”
100%[========================================================================================>] 71          --.-K/s 用时 0s      

2017-11-20 19:32:54 (6.86 MB/s) - 已保存 “/etc/yum.repos.d/jenkins.repo” [71/71])

[root@chy01 ~]# cat /etc/yum.repos.d/jenkins.repo //查看jenkins的yum源
[jenkins]
name=Jenkins
baseurl=http://pkg.jenkins.io/redhat
gpgcheck=1
[root@chy01 ~]# rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key //在安装jenkins的时候需要先安装一个jenkins.io.key 
[root@chy01 ~]# yum install -y jenkins //安装jenkins

启动jenkins

[root@chy01 ~]# systemctl start jenkins
[root@chy01 ~]# ps aux |grep jenkins
jenkins   93360 38.3  3.6 2384884 56564 ?       Ssl  19:48   0:03 /etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
root      93415  0.0  0.0 112664   976 pts/0    R+   19:48   0:00 grep --color=auto jenkins
[root@chy01 ~]# netstat -lntp |grep 8080
tcp        0      0 127.0.0.1:8080          0.0.0.0:*               LISTEN      85409/unicorn maste 
[root@chy01 ~]# cat /var/log/jenkins/jenkins.log //查看jenkins的日志文件

开始浏览上的安装与配置

0ee1db80ee758c198ffb5bfbce02a55d.png-wh_

[root@chy01 ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
abd528b829124c7193ede02c630b1187

- 安装插件,根据自己的需求来安装,我选择的是第一种全部安装插件。第二种是自定义插件

797aad0749565d8a7cbf2fd375b14525.png-wh_

- 安装插件的过程

033660d1aa774a4de5540e29729fcb40.png-wh_

- 设置信息

14cdc750752651a96afce66763bd61e7.png-wh_

- 安装完成

74f24613c1ca5294c87c5e404a41c2d7.png-wh_

[root@chy01 ~]# vim  /etc/sysconfig/jenkins  //jenkins的配置文件
[root@chy01 ~]# cd /var/lib/jenkins/ //jenkins的程序主目录
[root@chy01 jenkins]# ls 
config.xml                      jenkins.install.InstallUtil.lastExecVersion  nodes                     updates
hudson.model.UpdateCenter.xml   jenkins.install.UpgradeWizard.state          plugins                   userContent
hudson.plugins.git.GitTool.xml  jobs                                         secret.key                users
identity.key.enc                logs                                         secret.key.not-so-secret  workflow-libs
jenkins.CLI.xml                 nodeMonitors.xml                             secrets
[root@chy01 jenkins]# ls jobs/ //jobs目录存放的是在浏览器中创建的任务
[root@chy01 jenkins]# ls logs //logs存放的是日志
tasks
[root@chy01 jenkins]# ls nodes //多节点用到的一个目录
[root@chy01 jenkins]# ls plugins/ //存放的是插件
[root@chy01 jenkins]# cd secrets //密码/密钥所存在的目录
jenkins不需要借助于数据库,它的配置都在xml的文件中。

希望看过的童鞋多多指教,谢谢!j_0063.gifj_0063.gif