暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

在Oracle云上部署持续集成工具Jenkins

凛冬未至 2017-08-24
837

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。[百度百科]

 

Jenkins功能包括:

1、持续的软件版本发布/测试项目。

2、监控外部调用执行的工作。

 

关于Jenkins的详细信息,可以查看Jenkins的官网,本文不做赘述。

 

本文将介绍如何在Oracle公有云上安装和配置Jenkins

 

Step 1 — Oracle云上创建OL7.2实例,用来部署Jenkins

创建Linux实例,参见文章Oracle云上创建Oracle Linux实例

 

Step 2 — 安装Jenkins

可以通过两种方式在Oracle Linux上安装Jenkins

一种是通过repository,用yum的方式安装

一种是通过WAR包的方式安装

因为使用repository的方式比较简便,而且安装完成后,系统会自动创建一个Jenkins的服务,而WAR包的方式安装,还需要另外创建一个Jenkins服务。本文才采用第一种方式,即repository方式,用yum安装。

 

运行Jenkins需要Java环境,Oracle云上创建的OL7实例中,由于系统安全的考量,缺省没有安装Java,所以第一步,需要在OL7上安装Java环境。

$ sudo -s

# yum -y install java

 

使用repository安装Jenkins前,需要下载Jenkinsrepository

本文将使用wget来下载Jenkinsrepository,需要安装wget

# yum -y install wget

 

# wget -O etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

 

然后用rpmJenkins的验证码(verification key)导进来。

# rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

 

安装Jenkins

# yum install jenkins -y

 

采用repository方式安装,系统会自动创建一个Jenkins服务,我们可以通过服务的方式启动Jenkins

# systemctl start jenkins.service

 

查看Jenkins服务运行状态。

# systemctl status jenkins.service

jenkins.service - LSB: Jenkins Automation Server

   Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)

   Active: active (running) since Thu 2017-08-17 20:33:31 EDT; 12s ago

     Docs: man:systemd-sysv-generator(8)

  Process: 14870 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=0     SUCCESS)

   CGroup: /system.slice/jenkins.service

           └─14887 etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -...

 

Aug 17 20:33:30 d0e662 systemd[1]: Starting LSB: Jenkins Automation Server...

Aug 17 20:33:30 d0e662 runuser[14871]: pam_unix(runuser:session): session o...0)

Aug 17 20:33:31 d0e662 systemd[1]: Started LSB: Jenkins Automation Server.

Aug 17 20:33:31 d0e662 jenkins[14870]: Starting Jenkins [  OK  ]

 

 

通过访问Jenkinsweb界面,确实Jenkins的运行状态

地址: http://ip-of-your-machine:8080

 

按照提示,输入文件中的管理员口令。点击“Continue”。

Jenkins订制界面,选择安装插件,选择“Install suggested plugins”。

 

 

开始安装推荐插件。

第一次进入Jenkins系统时,系统会建议安装一些推荐的插件,我们也可以不选择推荐插件,根据自己的需要选择要安装的插件。也可以在主界面的“系统管理”模块中,进入“插件管理”子模块,可根据自己的需要添加或者删除插件,如下图:

 

初始配置完毕,将进入Jenkins的主界面。

 

 

Step 3 — 创建用户

以管理员身份登陆系统后(用户:admin admin的口令在安装配置时就已经生成,存放在文件/var/lib/jenkins/secrets/initialAdminPassword中),可以通过web管理界面创建用户。

在主界面的左侧,点击“系统管理”,在系统管理界面,选择“管理用户”,然后再选择“新建用户”。

 

 

填写新用户的信息,点击“新建用户”。


用户创建完成后,通常需要给用户授权。

在主界面中,点击“系统管理”,进入“管理Jenkins”界面,选择“Configure Global Security”,定义Jenkins的访问控制策略。

 

可以看到,在最新版本中(2.74),缺省的“授权策略”是“登录用户可以做任何事”,这个授权太过简单粗暴,存在安全隐患。最佳实践是针对不同的用户,授予相应的权限。

 

 

 

建议选择“项目矩阵授权策略”,可以对不同的用户或组,授予不同的权限。

 

 

Step 4 — 创建示例工程

 

进入Jenkins主界面,可以通过点击左边栏的“新建”链接,或者中间栏的“创建一个新任务”链接,进入任务创建界面。

 

选择“构建一个自由风格的软件项目”,填写项目名称“new test project”。

 

设置新工程属性,本例是一个简单的示例,执行一个shell脚本。

 

Command区域填写需要执行的脚本内容,点击保存。

 

新建的工程保存后,系统将进入该工程的概览页面,可以看到关于该工程的相关信息,比如“构建历史”。

 

点击左边栏中的“立即构建”将开始构建,我们可以从“构建历史”区域看到构建工作正在进行。构建结束后,在“构建历史”区域就能看到本次构建的状态信息,如图:

 

如果想查看本次构建的具体信息,尤其是当构建失败时,可以通过查看本次构建工作的详细信息寻找失败的原因。


点击“Console Output”,查看本次构建的控制台输出。

 

 

回到Jenkins主界面,我们可以看到所有工程的概览信息,包括这些工程的运行状态。

至此,我们已经在Oracle云上成功的部署Jenkins

Jenkins作为一个免费的持续集成工具,尤其能够出色的处理大型项目,大家应该多研究研究,深入发掘Jenkins的价值,本公众号也会持续关注Jenkins,后续会带来更多的技术分享,敬请期待!

 


文章转载自凛冬未至,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论