使用Jenkins触发gitlab的webhook

  • 若安装在docker内在需要先进入docker内部执行git的相关操作

1.1首先在jenkins插件中心下载gitlab,重启后生效

在这里插入图片描述

1.2 配置仓库源地址

  • 来个示意图 本地和Jenkins那台服务器都需要配置ssh
  • 若是jenkins是docker安装的则需要进到docker内部 生成公钥与私钥 并把公钥私钥配置给gitlab和Jenkins
    在这里插入图片描述

检查用户名和邮箱

git config --global  --list 

如未配置,则执行以下命令进行配置

git config --global  user.name "这里换上你的用户名"
git config --global user.email "这里换上你的邮箱"

然后执行以下命令生成秘钥( 如果在容器内部进入容器docekr exexc -it容器名 /bin/bash 后先要创建cd ~ mkdir .ssh) 接连按三下enter就可以了

ssh-keygen -t rsa -C "这里换上你的邮箱"
  • 记录下jenkins服务器的密钥位置(比较奇怪的位置 一般都在.ssh下面)

在这里插入图片描述

在远程主机上输入公玥
在这里插入图片描述

在这里插入图片描述

  • 关联一个远程仓库地址
git remote add origin git@code.shomes.cn:youfei/test_jenkins.git

查看远程仓库

 git remote --verbose
  • 若存在远程仓库,先删除远程仓库
git remote rm origin
  • 推送(第一次)到远程仓库
git push -u origin master

1.3 勾选此选项 git lab插件安装成功后才会显示

在这里插入图片描述详细步骤查看此文章 了解吧大同小异
查看此文章在这里插入图片描述

说个报错
若配置出现这种报错

Failed to connect to repository : Command "git ls-remote -h -- git@code.shomes.cn:youfei/test_jenkins.git HEAD" returned status code 128: stdout:

则需要 在执行(安装在容器里 就进入容器执行docekr exexc -it 容器名 /bin/bash)

git ls-remote -h -- git@code.shomes.cn:youfei/test_jenkins.git HEAD

来生成know host 文件即可连接

  • 若提示之类的
Offending key for IP in /root/.ssh/known_hosts:1
Matching host key in /root/.ssh/known_hosts:2

cat /dev/null > known_hosts清空,在执行git ls-remote -h -- git@code.shomes.cn:youfei/test_jenkins.git HEAD后构建成功

另外使用账号密码连接gitlab也是一种很好的方式

在这里插入图片描述


版权声明:本文为weixin_44259638原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。