当前位置:   article > 正文

【Jenkins】Jenkins连接gitlab报错:returned status code 128_returned status code 128:

returned status code 128:

目录

一、前言

二、Jenkins创建Item连接Gitlab

三、常见错误(包括 returned status code 128报错)


一、前言

        近期学习Jenkins过程中遇到的问题,希望能帮助到大家,如只为解决 returned status code 128问题,可以直接跳到最后查看本文。

二、Jenkins创建Item连接Gitlab

使用jenkins创建item,配置连接git仓库(这里使用的是gitlab本地仓库,如使用的是互联网仓库替换仓库地址即可)

  1. 准备两台机器
  2. 1. gitlab
  3. 2. jenkins
  4. 分别启动好,gitlab和jenkins
  5. 从gitlab获取仓库地址(ssh)
  6. git@192.168.142.133:cmdb_dev/learn_gitlab.git

整体流程:用户访问jenkins  —> jenkins配置iteml(自动拉去gitlab代码)  —> jenkins从gitlab拉去代码到本地工作区

1. 进入jenkins,选择Item,进入配置页面,配置如下信息(这里使用ssh的方式),选择ADD添加凭证

2. 添加jenkins私钥

  ssh-keygen -t rsa  # jenkins服务器生成公私钥,配置到添加的凭证中

3. 使用上一步jenkins服务器生成的公钥配置到gilab中

4. 确认 Item配置的GIt配置无误后,点击保存

5. 点击开始构建,查看控制台输出信息

三、常见错误(包括 returned status code 128报错)

1.  jenkins服务器没有安装git工具

解决办法如下

  1. jenkins服务器安装git工具
  2. yum install -y git

2. 权限问题,没有ssh免密登录

解决办法如下

1. 将jenkins服务器生成的公钥,配置到gilab服务器

  1. ssh-keygen -t rsa # jenkins服务器生成公私钥
  2. ll ~/.ssh/id_rsa.pub # 将当前用户下,这个文件内容配置到gitlab的ssh密钥中

到了这里可能其他版本用户就已经解决了,但是我当前使用的版本它还是报错,所以接着往下走。

2. 发现还是报错,而且是相同的错(这里怀疑可能是版本原因,我的jenkins版本是jenkins-2.387.2-1.1.noarch)

执行如下命令解决,主要是将gitlab服务器的公钥拷贝至jenkins服务器中

ssh-keyscan -t ecdsa 192.168.142.133 >> ~/.ssh/known_hosts

它用于获取远程主机的公钥并将其添加到本地的 `known_hosts` 文件中。

- `t ecdsa` 参数指定了使用 ECDSA(椭圆曲线数字签名算法)类型的密钥来获取远程主机的公钥。ECDSA 是一种公钥加密算法,用于生成和验证数字签名,它提供了与其他加密算法相比较小的密钥尺寸和较快的性能。

2.3. 最后需要使用重启大法,重启下jenkins

systemctl restart jenkins
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/541663
推荐阅读
相关标签
  

闽ICP备14008679号