1、Jenkins的概念
1.1Jenkins的介绍
Jenkins是一个独立的开源软件项目,是基于Java开发的一种CI(Continuous integration,持续集成)
&CD (Continuous Delivery,持续交付)工具,用于监控持续重复的工作,旨在提供一个开放易用的软件
平台,使软件的持续集成变成可能。其前身是商业软件Hudson。可用于自动化各种任务,如构建,测
试和部署软件
1.2Jenkins的用途
- 持续、自动地构建/测试软件项目
- 监控一些定时执行的任务
1.3Jenkins的特点
- 开源免费
- 跨平台,支持所有的平台
- master/slave支持分布式的build
- web形式的可视化的管理页面
- 安装配置简单
- 及时快速的提示和帮助
- 插件数量多
2、Jenkins的使用
2.1Jenkins结合gitlab实现代码下载
2.1.1基于http克隆代码
1、在Jenkins的插件管理安装gitlab插件
2、在Jenkins上配置基于http克隆的凭据
3、创建任务测试
2.2基于ssh克隆代码
1、修改Jenkins的启动用户
jenkins默认是使用Jenkins用户启动,如果不改后续的一些操作会因为权限问题报错
root@k8s-jenkins:/var/lib/jenkins# vim /lib/systemd/system/jenkins.service
User=root
Group=root
2、在gitlab上配置ssh免密
3、在Jenkins上配置基于ssh克隆的凭据
4、创建任务测试
3、Jenkins故障总结
3.1基于http克隆报错
**故障原因:http克隆使用的是凭据是username
解决方案:凭据改成username
3.2 基于ssh克隆报错
故障原因:Jenkins默认使用Jenkins用户启动服务,在凭据里面我拷贝的root的私钥
解决方案:把Jenkins的启动用户改成root
3.3 构建任务失败
排查思路
- 在Jenkins服务上手动拉取gitlab代码看是否成功
- 检查Jenkins里构建任务里面的gitlab分支书写是否错误