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

相关推荐
互联网搬砖老肖2 小时前
运维打铁: MongoDB 数据库集群搭建与管理
运维·数据库·mongodb
Antonio9153 小时前
【音视频】HLS简介与服务器搭建
运维·服务器·音视频
艾伦_耶格宇4 小时前
【docker】-1 docker简介
运维·docker·容器
R.X. NLOS4 小时前
VS Code远程开发新方案:使用SFTP扩展解决Remote-SSH连接不稳定问题
运维·服务器·ssh·debug·vs code
cuijiecheng20184 小时前
Ubuntu下布署mediasoup-demo
linux·运维·ubuntu
jingyu飞鸟8 小时前
linux系统源代码安装apache、编译隐藏版本号
linux·运维·apache
2401_858286119 小时前
OS15.【Linux】gdb调试器的简单使用
linux·运维·服务器·开发语言·gdb
c30%0011 小时前
内网渗透——红日靶场五
运维·服务器
zjw_rp11 小时前
centos停止维护后更换yum源
linux·运维·centos
宇钶宇夕11 小时前
EPLAN 电气制图:建立自己的部件库,添加部件-加SQL Server安装教程(三)上
运维·服务器·数据库·程序人生·自动化