Jenkins
Jenkins和持续集成概念
Jenkins是一个开源的,基于Java开发的持续集成工具。Jenkins的目标在于为全世界提供一种持续集成的思路,虽然在实现上还有很多问题,但是经过二次开发已经使软件的持续集成成为可能。
传统的软件开发流程大致为
- 无bug时:开发>>>测试>>>运维
- 有bug时:测试>>>开发或运维>>>开发
而且一般开发会将所有功能全部实现才会将代码交给测试,这就造成了效率的低下,一方面开发不断地改bug,另一方面开发又不断地写bug。
而持续集成则是一种新的思路,理想中的持续集成应用中没有测试和运维的位置,开发会经常将自己的代码集成,然后由集成软件自动化地对其进行编译,测试,发布等操作,这样开发每天都可以及时修改自己代码中的bug,而不用等到开发完毕才能发现bug,最终面临牵一发而动全身的窘境。
但是,目前持续集成还无法落地,对于想要使用持续集成的公司,首先要对对Jenkins进行二次开发。
往大了说持续集成包括三方面的内容,即:
- 持续集成(Continuous Intergration):简称CI,指的是软件个人开发的部分向软件整体交付,以便尽早发现个人开发部分的问题
- 持续交付(Continuous Delivery):简称CD,指的是开发尽快向客户交付,以便尽早发现生产环境中存在的问题
- 持续部署(Continuous Deployment):简称CD,指的是开发的代码尽快向可运行的测试交付,以便尽早测试
Jenkins安装部署
在这个网站可以找到需要的Jenkins版本
http://pkg.jenkins.io/
安装JDK环境
yum -y install java-1.8.0-openjdk
下载Jenkins软件包
wget http://pkg.jenkins.io/redhat-stable/jenkins-2.190.2-1.1.noarch.rpm
rpm安装
rpm -ivh jenkins-2.190.2-1.1.noarch.rpm
启动Jenkins
systemctl restart jenkins
查看端口
netstat -anp
tcp6 0 0 :::8080 :::* LISTEN 7552/java
打开防火墙端口
firewall-cmd --add-port=8080/tcp
firewall-cmd --add-port=8080/tcp --permanent
浏览器访问,显示
卡在这个界面不要急,这又是某防火墙的锅
找到Jenkins的工作目录
rpm -ql jenkins
/var/lib/jenkins
修改hudson.model.UpdateCenter.xml
把http://updates.jenkins-ci.org/update-center.json
改成http://mirror.xmission.com/jenkins/updates/update-center.json
重启Jenkins
然后还是不行
修改这个文件(第一次看见这个文件我差点吐了,原因不解释)
vim /var/lib/jenkins/updates/default.json
把"connectionCheckUrl":"http://www.google.com/"
改成"connectionCheckUrl":"http://www.baidu.com/"
这回终于成功了
按提示找到管理员密码
cat /var/lib/jenkins/secrets/initialAdminPassword
e8301bece32841a0bf89a1c065a418c0
接下来会提示安装插件,一定不要在这里安装,因为网络原因这里可能会下载一年
创建第一个管理员用户并保存
接下来就能开始使用了
Jenkins解决插件安装失败的问题
其实解决这个问题有两种方法,看你想用哪一种
第一种
之所以Jenkins安装插件会失败,是因为默认插件源在国外,我们的网速会非常慢,动不动下载就失败了,但是不要紧,我们只需要更换一个插件源。
具体流程为:
- 点击Manage Jenkins
- 点击Manage Plugins
- 点击Advanced
- 在Update Site中修改URL为:http://mirror.esuni.jp/jenkins/updates/update-center.json
然后我开始安装语言插件,这里我发现了一个坑。一般在公司使用什么软件都是选择最新版往前推n个版本的稳定版,而我这次是做实验,就选择了Jenkins网站上的最新版,然后我就掉坑里了。
首先下载locale plugin插件并选择下载完重启
重启后进入Manage Jenkins下的Configure System,我们会发现一个locale选项,这个选项之前没有,是安装了locale plugin插件后才出现的,在这里可以设定你想要的语言
查看有何语言可以设置
locale -a
zh_CN
zh_TW
一般我们都会选择简体中文,但是最新版的Jenkins就是不能设置简体中文,如果实在想看简中建议安装jenkins-2.138版本,亲测可以用简中,其他版本不保证,如果觉得可以接受的话就选择繁体中文的吧
记得要给参数:Ignore browser preference and force this language to all users前面打勾,否则语言修改不能生效,然后apply就行了。
第二种
浏览器打开网站:
http://updates.jenkins-ci.org/
选择stable-2.190下的latest,我们会看到一个jenkins.war和很多以.hpi结尾的文件,jenkins.war就是Jenkins的war包,另外那些文件就是此版本Jenkins的插件,如果网速比较好的话,写个脚本把所有插件都下载到/var/lib/jenkins/plugins下并重启Jenkins就可以将所有插件都安装上。
遗憾的是,还是不能用简体中文,也许过几天就会修复这个bug了吧。
上一篇: 全方位科普平面设计中的时尚流行复古风格
下一篇: jenkins
推荐阅读
-
如何利用Jenkins + TFS为.Net Core实现持续集成/部署详解
-
详解jenkins自动化部署vue
-
Jenkins安装以及邮件配置详解
-
jenkins中如何集成commander应用的完整步骤
-
使用Jenkins Pipeline自动化构建发布Java项目的方法
-
详解jenkins自动化部署vue
-
centos下GitLab+Jenkins持续集成环境搭建(安装jenkins)
-
jenkins定时构建时间设置(图解jenkins如何创建定时任务)
-
Nuggets非执行董事Kevin Jenkins:区块链支付恰逢其时
-
jenkins定时构建时间设置(图解jenkins如何创建定时任务)