1 jenkins介绍
- 在说jenkins之前我们先来看看一个互联网公司上线的一个流程:
以共享单车为例:(充值-交押金-骑车)-开始设计产品成型-开发人员开发代码-测试人员测试功能-运维人员发布上线 来看张图来更好的理解下
持续集成 (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)
开始安装:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
[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
1
2
3
4
5
6
7
|
[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的日志文件
|
开始浏览上的安装与配置
1
2
|
[root@chy01 ~]
# cat /var/lib/jenkins/secrets/initialAdminPassword
abd528b829124c7193ede02c630b1187
|
- 安装插件,根据自己的需求来安装,我选择的是第一种全部安装插件。第二种是自定义插件
- 安装插件的过程
- 设置信息
- 安装完成
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
[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的文件中。
|
本文转自我不是瘦子51CTO博客,原文链接:http://blog.51cto.com/chy940405/1983564,如需转载请自行联系原作者