【SRE系列之Jenkins的使用】--实现ssh和http克隆

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用户启动,如果不改后续的一些操作会因为权限问题报错

bash 复制代码
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 构建任务失败

排查思路

  1. 在Jenkins服务上手动拉取gitlab代码看是否成功
  2. 检查Jenkins里构建任务里面的gitlab分支书写是否错误
相关推荐
陳10305 分钟前
Linux:进程间切换与调度
linux·运维·服务器
SilentSamsara2 小时前
TCP 三次握手:连接建立失败的那些坑
运维·服务器·网络·网络协议·tcp/ip
code tsunami3 小时前
如何在车辆数据自动化中解决Cloudflare Turnstile
运维·microsoft·自动化
翼龙云_cloud4 小时前
亚马逊云代理商:CloudWatch Agent 全解析 5 步实现服务器监控
运维·服务器·云计算·aws·云服务器
Cyber4K5 小时前
【Nginx专项】基础入门篇:状态页、微更新、内容替换、读取、压缩及防盗链
linux·运维·服务器·nginx·github
Bruce_Liuxiaowei6 小时前
顺藤摸瓜:一次从防火墙告警到设备实物的溯源实战
运维·网络·网络协议·安全
IpdataCloud7 小时前
效果广告中点击IP与转化IP不一致?用IP查询怎么做归因分析?
运维·服务器·网络
SPC的存折7 小时前
2、Docker命令与镜像、容器管理
linux·运维·服务器·docker·容器·eureka
D4c-lovetrain7 小时前
Linux个人心得26 (redis主从复制全流程,详细版)
linux·运维·服务器
Bert.Cai7 小时前
Linux whoami命令详解
linux·运维