Jenkins介绍
Jenkins 是一个独立的开源软件项目,是基于Java开发的一种持续集成工具(有关持续集成可查看我另一篇博客: 了解持续集成、持续交付与持续部署),用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。可用于自动化各种任务,如构建,测试和部署软件。
Jenkins持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,所以它有利于减少重复过程以节省时间、费用和工作量。
Jenkins安装配置
安装Jenkins前请先安装jdk。
下载安装
下载Jenkins,地址:https://jenkins.io/download/;
国内的镜像下载地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/
建议使用国内的镜像下载, 官方的下载太慢。
# 下载
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.263.2-1.1.noarch.rpm
# 安装
rpm -ivh jenkins-2.263.2-1.1.noarch.rpm
配置Jenkins
添加jdk路径
# 编辑文件
vi /etc/rc.d/init.d/jenkins
找到以下内容:
candidates="
/etc/alternatives/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/bin/java
"
添加java路径,修改为:
candidates="
/usr/local/jdk1.7/bin/java # 添加java路径
/etc/alternatives/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/lib/jvm/java-1.7.0/bin/java
/usr/lib/jvm/jre-1.7.0/bin/java
/usr/bin/java
重新执行
systemctl daemon-reload
修改端口
Jenkins 默认端口是 8080
,如果要修改端口可通过修改配置文件来完成,新版本 Jenkins 的配置文件在/etc/sysconfig/jenkins
:
# 修改端口
vi /etc/sysconfig/jenkins
找到 JENKINS_PORT="8080"
将端口修改成自己的端口即可。
授权
必须授权 jenkins 用户所需的 Jenkins 相关目录权限,否则无法启动 Jenkins。
chown -R jenkins:jenkins /var/lib/jenkins
chown -R jenkins:jenkins /var/cache/jenkins
chown -R jenkins:jenkins /var/log/jenkins
相关说明:linux - Jenkins active (exited) - Stack Overflow
Setting permissions for files and folders under /var/lib/jenkins worked for me:
vim /etc/sysconfig/jenkins # make sure that $JENKINS_USER="jenkins" chown -R jenkins:jenkins /var/lib/jenkins chown -R jenkins:jenkins /var/cache/jenkins chown -R jenkins:jenkins /var/log/jenkins systemctl restart jenkins
启动jenkins服务
systemctl start jenkins
# 查看状态
systemctl status jenkins
初始化Jenkins
在浏览器中输入: http://localhost:8080 即可访问 Jenkins;
第一次访问时会初始化,如下图,根据安装页面提示找到对应文件复制里面的密码到输入框就可以登录。
登录成功后安装插件,我这里使用推荐的插件安装(新版本没有这个步骤了,登录成功会直接进入后台页面);
安装插件中…
安装完成后,创建管理员用户:
创建成功后即可完成Jenkin的初始化工作,点击”开始使用jenkins”即可进入后台管理页面。
jenkins后台管理页面:
错误
错误:No such plugin: cloudbees-folder
在选择【安装推荐的插件】后,报错:No such plugin: cloudbees-folder
;
尝试方法1
在 http://ftp.icm.edu.pl/packages/jenkins/plugins/cloudbees-folder/ 下载 cloudbees-folder 插件;
将插件上传至服务器
/var/cache/jenkins/war/WEB-INF/detached-plugins
目录(我的物理机安装,docker 安装的请自行查插件目录);重启 Jenkins 服务;
问题并没有得到解决。
尝试方法2
浏览器访问 http://
/manage,跳过插件安装,进入管理页面; 选择【管理插件】 -> 【高级】 -> 【上传插件】,将下载好的插件上传,可能会有错误,如下图:
我的版本是 2.107.2,上传的插件是最新版本,所以安装失败了,提示我将 Jenkins 升级至 v2.222.4
;
我尝试下载 5.0
版本的插件并上传,显示安装完成;
在插件管理页面中也能看到已安装的 “CloudBees Folders Plugin” :
于是,我尝试继续 【安装推荐的插件】,但还是报错:”No such plugin: cloudbees-folder”,问题还是没能解决。
最后,无奈的我只能将 Jenkins 升级至最新版才能解决问题