一.Jenkins简介
Jenkins只是一个平台,真正运作的都是插件。这就是jenkins流行的原因,因为jenkins什么插件都有 。
Hudson是Jenkins的前身,Hudson是基于Java开发的一种持续集成工具,用于监控程序重复持续的工作,Hudson后来被收购,成为商业版。后来为了方便使用创始人又写了一个jenkins,jenkins在功能上远远超过hudson。
Jenkins的优点和功能特性
持续集成和持续交付
作为一个可扩展的自动化服务器,Jenkins 可以用作简单的 CI 服务器,或者变成任何项目的持续交付中心。
简易安装
Jenkins 是一个基于 Java 的独立程序,可以立即运行,包含 Windows、Mac OS X 和其他类 Unix 操作系统。
配置简单
Jenkins 可以通过其网页界面轻松设置和配置,其中包括即时错误检查和内置帮助。
插件
通过更新中心中的 1000 多个插件,Jenkins 集成了持续集成和持续交付工具链中几乎所有的工具。
扩展
Jenkins 可以通过其插件架构进行扩展,从而为 Jenkins 可以做的事提供几乎无限的可能性。
分布式
Jenkins 可以轻松地在多台机器上分配工作,帮助更快速地跨多个平台推动构建、测试和部署。
二.安装环境
1.操作系统:Centos 7.6
2.服务器配置:2G内存,50G磁盘
3.安装包:jdk-8u211-linux-x64.rpm jenkins-2.190.2-1.1.noarch.rpm apache-tomcat-9.0.26.tar.gz
4.关闭selinux和防火墙
三.部署Jenkins
官网:https://jenkins.io/
国内下载地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/
1.安装jdk
[root@jenkins ~]# yum -y localinstall jdk-8u211-linux-x64.rpm
2.安装jenkins
注意:启动Jenkins的方式不同,对应的文件存放目录等是存在差异的,具体的请注意一下即可。
2.1下载安装Jenkins
[root@jenkins ~]# wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.190.2-1.1.noarch.rpm
#注意:其它版本安装包,对应官方下载既可。
[root@jenkins ~]# yum -y localinstall jenkins-2.190.2-1.1.noarch.rpm
jenkins主要的目录:
/usr/lib/jenkins/:jenkins安装目录,WAR包会放在这里
/etc/sysconfig/jenkins:jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在这里配置
/var/lib/jenkins/:默认的JENKINS_HOME
/var/log/jenkins/jenkins.log:Jenkins日志文件
2.2启动Jenkins
注意:
1、如果jenkins启动用户是jenkins,则无法拉取代码,因为我们是把root的公钥推送到gitlab普通用户dev下(dev属于ops组,所以可以拉取代码)
2、jenkins用户启动,需要把root公钥放到deploy下
项目--settings--repository-deploy keys
第一种启动方法:
#配置jenkins
[root@jenkins ~]# vim /etc/sysconfig/jenkins #进入配置文件启动用户修改为root,默认的为Jenkins。
.....
JENKINS_USER="root"
.....
#启动Jenkins
[root@CentOS7 ~]# systemctl start jenkins
[root@CentOS7 ~]# systemctl enable jenkins
第二种方法是用tomcat打开
解压tomcat到某个目录,如/usr/local,进入tomcat下的/bin目录,启动tomcat
将jenkins.war文件放入tomcat下的webapps目录下,启动tomcat时,会自动在webapps目录下建立jenkins目录,在地址栏上需要输入主机ip:8080/jenkins。
这里使用的是第二种方案进行启动Jenkins:
#安装tomcat
[root@jenkins ~]# tar xf apache-tomcat-9.0.26.tar.gz -C /usr/local/
[root@jenkins ~]# ln -s /usr/local/apache-tomcat- 9.0.26/usr/local/tomcat
[root@jenkins ~]# rm -rf /usr/local/tomcat/webapps/ROOT #删除默认站点目录
[root@jenkins ~]# cp /usr/lib/jenkins/jenkins.war /usr/local/tomcat/webapps/ROOT.war#复制jenkins.war 到站点目录下并重命名为ROOT.war
[root@jenkins ~]# /usr/local/tomcat/bin/startup.sh #启动Tomcat
#启动前查看该目录是空的,启动后会生成相应的文件
[root@jenkins ~]# ll /root/.jenkins/
total 28
-rw-r--r-- 1 root root 1640 2019-11-23 11:49 config.xml
-rw-r--r-- 1 root root 156 2019-11-23 11:47 hudson.model.UpdateCenter.xml
-rw------- 1 root root 1712 2019-11-23 11:47 identity.key.enc
-rw-r--r-- 1 root root 7 2019-11-23 11:47 jenkins.install.UpgradeWizard.state
-rw-r--r-- 1 root root 171 2019-11-23 11:47 jenkins.telemetry.Correlator.xml
drwxr-xr-x 2 root root 6 2019-11-23 11:47 jobs
drwxr-xr-x 3 root root 19 2019-11-23 11:47 logs
-rw-r--r-- 1 root root 907 2019-11-23 11:47 nodeMonitors.xml
drwxr-xr-x 2 root root 6 2019-11-23 11:47 nodes
drwxr-xr-x 2 root root 6 2019-11-23 11:47 plugins
-rw-r--r-- 1 root root 64 2019-11-23 11:47 secret.key
-rw-r--r-- 1 root root 0 2019-11-23 11:47 secret.key.not-so-secret
drwx------ 4 root root 265 2019-11-23 11:47 secrets
drwxr-xr-x 2 root root 26 2019-11-23 11:49 updates
drwxr-xr-x 2 root root 24 2019-11-23 11:47 userContent
drwxr-xr-x 3 root root 56 2019-11-23 11:47 users
说明:如果你是使用第一种方式启动,默认情况下/var/lib/jenkins/是空的,启动后会出现相应的配置文件。
2.3登录web页面进行安装http://ip:prot(默认端口为8080)
2.4根据界面提示信息去服务daunt查看密码
[root@jenkins ~]# cat /root/.jenkins/secrets/initialAdminPassword
7d429f2d73944e769180865371f9cbb5
2.5将上面的7d429f2d73944e769180865371f9cbb5复制到输入框
2.6上个步骤执行完成后,会弹出下面的对话框,点击推荐安装即可。
说明:这里默认情况下选择推荐安装插件是很难实现的,这里采用nginx代理的方式来实现跳转清华源的方式进行插件的安装,具体操作请参考链接文档:https://my.oschina.net/VASKS/blog/3106314
配置完成代理后进行插件安装,过程及结果如图:
2.7创建第一个管理员用户
2.8示例配置
2.9开始使用Jenkins
2.10出现下面的界面,那么Jenkins安装就成功了。
注意:如果出现nginx代理也无法安装插件的情况这里就只能在服务端进行插件的安装。这里只有在之前的步骤3.6之后才有变化
具体操作如下:
1)web界面设置
1.1弹出出下图的对话框,点击关闭即可。
1.2.开始使用Jenkins
1.3.出现下面的界面,那么安装就成功了
1.4.修改密码
1.5修改完成后自动跳入到登录验证界面,这里用修改的密码登录验证。
2)插件安装
2.1点击系统管理
2.2点击管理插件
2.3查看已经安装的插件
2.4可以在web界面直接安装的插件
2.5在服务端安装插件
安装插件你可以自行在官方下载,导入到插件的安装目录下,之后重启Jenkins即可使用。这里提供一个已下载好的插件包,一般需要的安装的插件都已经包含。
插件安装获取链接:https://pan.baidu.com/s/1EBdU60usgQXbCbGhlXa3pQ
提取码:jp4q
#查看Jenkins插件包的目录
[root@kibana ~]# cd /root/.jenkins/plugins/
[root@kibana ~/.jenkins/plugins]# ll
total 0
#将下载的安装包上传到服务器上之后解压
[root@kibana ~/.jenkins/plugins]# rz -E
rz waiting to receive.
[root@kibana ~/.jenkins/plugins]# ls
plugins.tar.gz
#解压插件压缩包
[root@kibana ~/.jenkins/plugins]# tar xf plugins.tar.gz
[root@kibana ~/.jenkins/plugins]# ls
plugins plugins.tar.gz
#插件包共有191个
[root@kibana ~/.jenkins/plugins]# ll plugins/|wc -l #插件包共有191个
191
#移动到Jenkins存放插件的目录。
[root@kibana ~/.jenkins/plugins]# mv plugins/* .
[root@kibana ~/.jenkins/plugins]# ll|wc -l
193
#重启tomcat
[root@kibana ~/.jenkins/plugins]# /usr/local/tomcat/bin/shutdown.sh
[root@kibana ~/.jenkins/plugins]# /usr/local/tomcat/bin/startup.sh
2.2浏览器刷新查看已安装的插件
2.3安装汉化包
2.4重启tomcat
[root@kibana ~/.jenkins/plugins]# /usr/local/tomcat/bin/shutdown.sh
[root@kibana ~/.jenkins/plugins]# /usr/local/tomcat/bin/startup.sh
2.5浏览器查看汉化效果
至此Jenkins的部署全部完成,你可以根据需要自己安装即可。
解决提示“该Jenkins实例似乎已离线”或“界面一直停留在
提示
:Please wait while Jenkins is getting ready to work …
Your browser will reload automatically when Jenkins is ready.”的问题
解决办法请参考链接文档:https://blog.51cto.com/13568014/2350363
启动Jenkins报错(自定义安装jdk路径容易出现的问题)
Jenkins配置jdk(启动报错:Starting Jenkins bash: /usr/bin/java: No such file or directory)
解决办法:
[root@jenkins ~]# systemctl daemon-reload
[root@jenkins ~]# systemctl start jenkins