Jenkins连接gitlab报错:returned status code 128

配置Jenkins连接gitlab仓库时遇到status code 128错误,原因是密钥验证失败。解决步骤包括在jenkins服务器创建密钥文件,将公钥添加到git仓库账号,将私钥配置到Jenkins全局凭据,并在项目中使用该凭据拉取仓库数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题

在项目中配置git仓库地址时,报无权限:

Failed to connect to repository : Command "git ls-remote -h git@xxx.git HEAD" returned status code 128:
stdout:
stderr: Host key verification failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rightsand the repository exists.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6ioBZZZV-1586504276353)(evernotecid://B1C45E84-DAD5-4A3E-8F09-F042CE8BEC59/appyinxiangcom/9699651/ENResource/p2458)]

原因

密钥验证失败,导致无法从远程仓库读取。请确保您有正确的访问权限和git仓库的存在。

解决方案

1、部署jenkins的机器创建密钥文件。
执行:

ssh-keygen -t rsa -C "xxxx@xx.com" 

随后即可查看到密钥文件

-bash-4.2# pwd
/root/.ssh
-bash-4.2# ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts

2、将公钥id_rsa.pub配置在git仓库的拥有者的账号上。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f1K3Pmsq-1586504276354)(evernotecid://B1C45E84-DAD5-4A3E-8F09-F042CE8BEC59/appyinxiangcom/9699651/ENResource/p2462)]

3、在"jenkins --> 凭据 --> 系统 --> 全局凭据"中添加一个SSH凭据,配置生成的私钥id_rsa。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6IaNlxsb-1586504276355)(evernotecid://B1C45E84-DAD5-4A3E-8F09-F042CE8BEC59/appyinxiangcom/9699651/ENResource/p2464)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jwD8JPti-1586504276355)(evernotecid://B1C45E84-DAD5-4A3E-8F09-F042CE8BEC59/appyinxiangcom/9699651/ENResource/p2465)]
4、然后在项目中就可以使用git账号拉取远程仓库的数据了。
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值