Jenkins-构建程序的持续集成平台(安装篇)

简介:

一、什么是持续集成

1、什么是集成

指的是代码由编译、发布和测试、直到上线的一个过程

2、什么持续集成

高效的、持续性质的不断迭代代码的集成工作

3、如何高效准确的实现持续集成

必不可少的需要一套能自动化、并且可视化的平台来帮助我们。

那么总结来看,Jenkins就是一个可以帮助我们实现持续集成的平台。

二、为什么Jenkins能帮助我们进行持续集成

理由有如下几点:

1、Jenkins是一个开源的、且基于JAVA代码开发的持续集成系统, 
因为含有非常丰富的插件支持所以我们可以方便的打通版本库、测试构建环境、线上环境的所有环节。并且丰富友好的通知使用者和开发、管理人员。

2、安装维护简单

安装Jenkins,不太复杂。且支持通用的平台。

3、Java 应用 常用

在企业的软件构建过程中,JAVA的应用工程稍显复杂,由于复杂构建、和代码上线、并且服务的重启。整个过程下来,消耗的时间较多,Jenkins却能很好的集成maven的编译方式,且利用自动化的插件、和自定义开发脚本的支持。所以目前广泛的应用于JAVA工程的持续集成平台。

好了,那么接下来我就来介绍,如何搭建一套快速有效的Jenkins持续集成平台。

三、Jenkins持续集成平台安装

1、前期准备

svn:一个开放源代码的版本控制系统

Centos6.4:一个较接近的版本linux系统

java:预先准备好一套JDK环境

2、安装

安装体系

jenkins+svn+maven+shell(用于发布)

#安装Jenkins #

Jenkins的安装可以通过tomcat作为容器安装,由于Jenkins包就自带了servlet,所以我们只需要下载安装就可以直接启动。

1、下载war包:

官方地址下载:http://mirrors.jenkins-ci.org/war-stable/ 
图片描述
2、启动Jenkins

java -jar ./jenkins.war –httpPort=8080

3、测试

确认终端启动的输出日志正常,并用浏览器访问测试环境的服务,地址为:http://IP+8080

四、Jenkins安装界面配置

1、解锁服务

第一次,登录,需要进行一个解锁 ,页面也会有提示,

/root/.jenkins/secrets/initialAdminPassword,我们可以通过这个文件中查看密码,并输入。

2、进入安装界面

3、进入 Getting Started 界面 
图片描述

最好能确保推荐安装的插件都有安装成功。

图片描述

4、新建admin用户

会提示我们需要新建一个用户,这个我们自己新建,记得记录好新建的用户口令就行。

确认完成后,就正式进入到了Jenkins的页面。

Welcome to Jenkins!

补充:

Jenkins的配置,和插件的安装都会放入~/.jenkins中,所以如果需要重新初始化安装,只需要清理掉~/.jenkins的文件即可。

五、插件安装

1、安装插件方式选择

如果在安装时,没有安装好对应的插件可以选择如下方式进行插件的安装:

方法一.如果服务器可以上网,那边选择在线安装最好不过了,安装流程为: 
系统管理(Configure System)—-插件管理(Manage Jenkins)—选择需要的插件直接安装即可

方法二.如果服务器不能上网,那么就只能离线安装,首先去

http://updates.jenkins-ci.org/download/plugins/

下载需要的plugin,选择匹配的版本号,下载到本地,然后打开:系统管理()—插件管理—高级—找到”上传插件”(浏览,找到扩展名为.hpi的插件,上传之后默认直接就安装了。重启jenkins,安装的插件就可以使用了。

2、安装插件依赖解决

插件安装不上去,一定是某个地方出现问题。在Jenkins的终端日志中,可以查看到对应的错误。需要针对性的解决。

比如:在安装subversion的时候,的错误提示。 
一般的情况安装对应的插件,会把需要依赖的插件安装上。如出现对应的依赖问题,就需要一一安装上对应的依赖包。如下错误中,我们就需要先安装好这两个依赖包。 
mapdb-api (1.0.1.0), workflow-scm-step (1.4.3)

Failure - 
java.io.IOException: Failed to dynamically deploy this plugin 
at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1867) 
at hudson.model.UpdateCenter$DownloadJob.run(UpdateCenter.java:1624) 
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) 
at java.util.concurrent.FutureTask.run(FutureTask.java:262) 
at hudson.remoting.AtmostOneThreadExecutor$Worker.run(AtmostOneThreadExecutor.java:110) 
at java.lang.Thread.run(Thread.java:745) 
Caused by: java.io.IOException: Failed to install subversion plugin 
at hudson.PluginManager.dynamicLoad(PluginManager.java:834) 
at hudson.PluginManager.dynamicLoad(PluginManager.java:775) 
at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1863) 
… 5 more 
Caused by: jenkins.MissingDependencyException: One or more dependencies could not be resolved for subversion : mapdb-api (1.0.1.0), workflow-scm-step (1.4.3) 
at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:529) 
at hudson.PluginManager.dynamicLoad(PluginManager.java:824) 
… 7 more

3、查看已经安装的插件

为了更好的方便我们学习下节课内容,请同学们通过插件管理(Manage Jenkins)—已安装插件(Installed),确保安装好了如下的插件:

Subversion Plug-in Jenkins对SVN的支持。

Maven Integration plugin 用于对java代码的构建

Email Extension Plugin 邮件模块

Ant Plugin 也是对java代码构建,不过是通过ant来作。

还有一些是安装jenkins的时候推荐安装的,大家也最好安装上。

目录
相关文章
|
4天前
|
前端开发 jenkins 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-前端项目发布(五)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-前端项目发布(五)
20 1
|
4天前
|
jenkins 网络安全 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
18 3
|
4天前
|
资源调度 jenkins 持续交付
jenkins 自动安装nodejs16.16.0版本报错处理
jenkins 自动安装nodejs16.16.0版本报错处理
31 0
|
4天前
|
jenkins Devops 机器人
【DevOps】(五)Jenkins构建给企业微信推送消息
【DevOps】(五)Jenkins构建给企业微信推送消息
22 1
|
2天前
|
jenkins 持续交付 数据安全/隐私保护
Docker 安装 Jenkins
Jenkins 是一个独立的开源自动化服务器,可用于自动化与构建、测试、交付或部署软件相关的各种任务。
17 1
|
4天前
|
运维 监控 Kubernetes
构建高效自动化运维体系:基于容器技术的持续集成与持续部署(CI/CD)实践
【5月更文挑战第15天】 随着云计算和微服务架构的普及,传统的IT运维模式面临转型压力。为提高软件交付效率并降低运维成本,本文探讨了利用容器技术实现自动化运维的有效策略。重点分析了在持续集成(CI)和持续部署(CD)流程中,容器如何发挥作用,以及它们如何帮助组织实现敏捷性和弹性。通过具体案例研究,文章展示了容器化技术在自动化测试、部署及扩展中的应用,并讨论了其对系统稳定性和安全性的影响。
|
4天前
|
运维 监控 安全
构建高效自动化运维系统:基于容器技术的持续集成与持续部署(CI/CD)实践
【5月更文挑战第14天】 随着DevOps文化的深入人心,持续集成与持续部署(CI/CD)已成为现代软件工程不可或缺的组成部分。本文将探讨如何利用容器技术,尤其是Docker和Kubernetes,构建一个高效、可扩展的自动化运维系统。通过深入分析CI/CD流程的关键组件,我们将讨论如何整合这些组件以实现代码从提交到生产环境的快速、无缝过渡。文章还将涉及监控、日志管理以及安全性策略等运维考量,为读者提供一个全面的自动化运维解决方案蓝图。
|
4天前
|
运维 Kubernetes 持续交付
构建高效自动化运维体系:基于容器技术的持续集成与部署实践
【5月更文挑战第13天】 在现代软件开发周期中,持续集成(CI)和持续部署(CD)已成为提升开发效率、保障产品质量的关键环节。随着云计算和微服务架构的普及,容器技术如Docker和Kubernetes为运维领域带来了革命性的变革。本文旨在探讨如何利用容器技术构建一个高效、可靠的自动化运维体系,实现从代码提交到产品发布的全过程自动化管理。通过深入分析容器化技术的核心原理,结合实际案例,我们将阐述如何优化持续集成流程、确保自动化测试的覆盖率、以及实现无缝的持续部署。
26 2
|
4天前
|
Web App开发 测试技术 C++
Playwright安装与Python集成:探索跨浏览器测试的奇妙世界
Playwright是新兴的跨浏览器测试工具,相比Selenium,它支持Chrome、Firefox、WebKit,执行速度快,选择器更稳定。安装Playwright只需一条`pip install playwright`的命令,随后的`playwright install`会自动添加浏览器,无需处理浏览器驱动问题。这一优势免去了Selenium中匹配驱动的烦恼。文章适合寻求高效自动化测试解决方案的开发者。
14 2
|
4天前
|
Java 开发工具 git
新的centos7.9安装docker版本的jenkins2.436.1最新版本-项目发布(三)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-项目发布(三)
12 4

热门文章

最新文章