搞定Jenkins部署,看这篇就够了!
Jenkins介绍
众所周知,Jenkins是一个开源软件项目,是基于[Java]开发的一种[持续集成]工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成
安装教程
针对Linux服务器上的资源服务器,常规的镜像会导致下载速度有些慢,所以需要针对服务器的镜像进行设定,通常情况我们会设定成阿里云的下载镜像,所以在此之前我们需要进行安装weget命令
wget-O/etc/yum.repos.d/jenkins.repohttps://pkg.jenkins.io/redhat/jenkins.repo
设置成功后,如下图所示:
然后就可以开始我们的重头戏了,我们需要进行下载Jenkins安装包
rpm --importhttps://pkg.jenkins.io/redhat/jenkins.io.key
yum install jenkins
在安装的过程中,需要进行相关依赖包的下载。直接回复Y 即可。
因为Jenkins的默认端口是8080,如果该端口被其他项目占用的话,我们就无法启动Jenkins项目,所以我们需要额外的修改Jenkins的项目端口,这步操作其实也非常简单。我们需要去etc/sysconfig/jenkins中去修改
vi /etc/sysconfig/jenkins
此时,我们只需要将Jenkins_port配置中的端口修改成我们自己的端口就行了。修改完成后,进行项目启动,启动命令有三种
service jenkins start
service jenkins stop
service jenkins restart
可能会出现的问题
Starting jenkins (via systemctl): Job for jenkins.service failed because the control process exited with error code. See systemctl status jenkins.service and journalctl -xe for details.
1、此时需要检查相应的Java部署环境,echo $JAVA_HOME
2、修改相应的配置文件,复制相应的路径进行修改/etc/init.d/jenkins 文件
3、进行重启服务 :重启命令:systemctl start jenkins
重启命令后发现依旧问题存在,这个时候我们需要进行根据提示进行问题排查和修复即可。需要执行提示中的命令:systemctl daemon-reload
4、执行命令后,如果依旧启动不了,我们也不要着急,根据提示一步一步排查。
最终可以看到,系统中无法找到我们配置的Java8 环境地址而已。所以我们需要再次核对线上Java8 配置的地址。
使用which Java 命令查看我们安装的Java地址。
/usr/local/java8/java/bin/java。
然后进行重新设定/etc/init.d/jenkins中的配置后,进行重启服务。
可能会有小伙伴疑惑,启动后Jenkins 就没有反应了,其实此时我们已经在后台进行运行了。如果不相信大家可以通过PS命令进行查看相关的进程。
到此,我们可以通过我们ip+端口进行访问我们发布的Jenkins了。如果无法访问则需要查看你所在服务器的防火墙是否开启端口,另外针对阿里云的出口规则。
配置优化
当然我们光启动完毕Jenkins还不够,针对自动化打包等情况,我们依旧需要进行配置插件加载,所以我们还需要进行优化一下配置。
首先我们切换到安装目录 /var/lib/jenkins
进入updates目录,修改default.json 中的谷歌地址,可以修改成 baidu.com。
https://updates.jenkins.io/download/plugins/
替换为
http://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/
其中的HTTPS 涵盖的字段比较多,还是建议大家在处理的时候可以下载下来进行替换后进行上传覆盖。
最后修改镜像源文件 在updates 下面的hudson.model.UpdateCenter.xml
http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
最后进行项目重启即可
项目发布
当我们重启服务后就可以看到初始的界面:
根据相应的路径找到我们的初始密码,就可以进行愉快的开启了我们的自动化部署之路了。
插件安装
Jenkins 针对插件的安装有2种方式,如图所示:
这里如果是为了方便,我们可以选择推荐安装的插件,针对没有后续不足的插件,我们可以在Jenkins中的市场中进行查询安装。
安装完成后就显示出项目的配置,之后我们就可以愉快的开启了自动化部署之路了。
Jenkins页面配置
万里长征第一步到这里总算完成了,接下来请大家跟着小栈君进行接下来的操作,我们一步一步将我们的线上自动化部署搞起。
首先我们需要进行环境变量的配置
在全局工具配置中进行配置我们Java 的环境,Git 、maven 等环境
配置完毕后,我们就可以进行我们相应工程的部署了。
如果你已经安装了Jenkins普通版本,可以在**【Manage Jenkins】——【ManagePlugins】**中搜索BlueOcean安装,安装完之后同样在主界面做侧导航栏可以看到上图中的图标。
安装完成,我们就开始进入主题,使用两种不同的方式创建Pipeline。
经典模式下创建Pipeline
创建pipeline一共两种方式,第一种方式我们称之为传统方式,是使用Jenkins经典界面,通过自己编写PipelineScript来组织流水步骤的。下面用图示的方式简单介绍一下这种方式。
1.登录Jenkins,点击左侧的新建,创建新的构建任务。
2.跳转到如下界面,输入自己的任务名称和描述信息之后,选择流水线选项并点击下方的确定按钮即创建了一个Pipeline任务。
1080×645 114 KB
3.跳转到Pipeline的设置页面,我们可以看到有四个tab,我们会针对每一个tab做详细介绍。
General
General是Pipeline的一些基本配置。名称,描述和一些基本设置。
以下简单介绍几个常用设置。其余没有介绍的设置项,大家可以参考Jenkins的官方文档或者帮助文档。
①.GitHub 项目
该pipeline的源代码托管在Github中,选中此选项,可以添加github中的项目地址
②.Preserve stashes from completed builds
想保留最近几次历史构建就可以勾选此项并填入想要保留的构建次数。每次构建都需要占不少的空间,因此不建议大量保存构建历史。
③.丢弃旧的构建
1080×519 62.3 KB
我这里设置了丢弃构建,仅保留最近一周的构建历史,不限定构建次数。
构建触发器
构建触发器很好理解,就是pipeline构建的触发条件。以下简单介绍一下各个触发条件。这些触发条件可以根据项目需要选择多个,组合使用。
899×204 94 KB
Jenkins创建Pipeline
近期使用Jenkins帮业务团队搭建过一次Pipline,并将测试流程加入到了Pipline中,将搭建过程的做了简单记录。考虑到项目的保密性,该文章仅演示搭建步