Jenkins-简介/安装!

一. 关于持续集成:

持续集成(CI ) [ Continuous Integration ],通俗来讲,就是一个能监控版本控制系统变化的工具,可以自动编译和测试集成的应用程序。出现问题,能够及时的通知相应人员。持续集成是一种思维工具集,想要充分利用好持续集成,必须要先进入持续集成的思维方式中(比如:我们的项目必须有一个可靠的,可重复的,自动化(不涉及人工干预)的构建过程)。持续集成内容如下:

复制代码
1. 密切监视代码库的健康,代码质量。
2. 降低技术债务和减少维护成本。
3. 清晰发布和展现总体开发工作的当前状态。
4. 自动化部署,发布,测试,简化和加速交付过程。

从一个从无到有的环境中,引入持续集成,大致有以下阶段:

复制代码
阶段一: 需要开发人员手动集成代码改动,靠开发或运维人员收到触发构建。
阶段二: 简单的脚本构建,没有可靠的或重复性的单元测试,通常放在业务低峰期(夜晚)上线。
阶段三: 代码更新,自动触发构建,将结果邮件等途径发送给相关人员(包括回滚)。
阶段四: 加入度量指标。自动化的代码质量和代码覆盖率检查,评估代码库的质量和测试的相关性及有效性。对测试质量的下降提出报警。
阶段五: 自动化测试验证(接入全面的端到端测试和性能测试)。
阶段六: 自动化验收测试和自动化部署。
阶段七: 持续部署。

持续集成服务器的可信度好坏在很大程度上取决于测试质量,所以我们需要设计强健的,高质量的测试和测试实践。本文中的jenkins就是以"一个健壮的和全面的持续集成解决方案"为目标的服务。

二. 为什么选择Jenkins:

为什么选择采用jenkins来作为我们的持续集成方案工具? :

复制代码
易用性:简单的部署方式,平滑的学习曲线,直观的用户界面。
扩展性:灵活的扩展,大量的开源插件(覆盖系统版本控制,构建工具,代码质量,构建通知,外部系统集成,界面定制化等)。
高社区活跃度:有规模的,响应的,开放太的讨论社区。

三. Jenkins简介:

jenkins是一个用java编写的开源持续集成工具。可以适用于各种语言和技术环境。jenkins与2004年开发。之前叫Hudson,09年被oracle收购,后开发社区与oracle关系破裂,将hudson的代码迁移为一个新的项目,命名jenkins。

四. 安装部署:

jenkins的部署是相当简单的,支持直接war包启动和以tomcat的容器运行,也支持docker方式。

依赖环境:

java: 1.8.0 (安装略)

jenkins: 2.493

方式一: 直接war包启动

复制代码
$ wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
$ java -jar jenkins.war --help  (查看启动帮助)
$ java -jar jenkins.war  (可通过--httpPort=9090指定相应端口,默认8080)
..............
生成一段密码,用于初始化:
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

0d39418e4e9d4bd4b7f4436071052ec3

This may also be found at: /home/xiaoxiang/.jenkins/secrets/initialAdminPassword
.......................................

打开对应的url : http://192.168.2.40:9090

出现以下界面,输入初始化密码:

安装插件。。

安装完成如下:

方法二:通过tomcat 容器启动:

安装tomcat后, 将jenkins.war包放在tomcat程序下webapps中即可。
备份:

备份主目录即可: /home/jenkinsname/.jenkins

相关推荐
Asuicao2 分钟前
ansible巡检脚本
linux·运维·ansible
Wezzer1 小时前
企业级部署 (基于tomcat与nginx)
linux·运维·服务器
Teamhelper_AR1 小时前
AR智能巡检:制造业运维效率提升的关键
运维·ar
看星星的小王子2 小时前
Linux基础(三)——Bash基础
linux·运维·bash
Gss7773 小时前
Linux 进程管理与计划任务详解
linux·运维·服务器
潜心专研的小张同学3 小时前
京东云轻量云服务器与腾讯云域名结合配置网站及申请SSL证书流程详解
运维·服务器·前端
one day3213 小时前
Linux和shell
linux·运维·服务器
鹏大师运维4 小时前
银河麒麟桌面操作系统:自定义截图快捷键操作指南
linux·运维·快捷键·国产操作系统·截图·麒麟kylinos·桌面操作系统
OpsEye5 小时前
台风季网络保卫战:互联网运维如何筑起“数字防波堤“?
运维·网络
yzx9910136 小时前
关于PHP学习
运维·爬虫·自动化·php