背景:自己搞着玩,jenkins在自己电脑上(macos12),gitlab是公司的

一. 安装

1. docker
  • 官网直接下载安装,有桌面版用起来也很方便
  • macos12可能不兼容最新版本的docker可以下载旧一点的版本
2. jenkins
  1. 使用docker安装jenkins/jenkins镜像,如果慢可以切换镜像源地址
// 下载jenkins最新版本
docker pull jenkins/jenkins:latest
// 
docker run -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home -d --name myjenkins jenkins/jenkins
// 说明:
// -p 8080:8080 将容器的8080端口映射到主机的8080端口,这是Jenkins的Web>界面默认端口。
// -p 50000:50000 映射Jenkins的代理端口,这对于Jenkins与Slave节点通信是必需的。
// -v jenkins_home:/var/jenkins_home 将主机的jenkins_home目录挂载到容器的/var/jenkins_home目录
// -d 脱离终端后台运行,终端关闭不影响容器
// --name myjenkins 为容器指定一个名称,这里命名为myjenkins
//成功之后浏览器localhost:8080打开jenkins页面 
  1. 打开jenkins页面之后,首次登录jenkins生成了一个密码,保存在服务器中的initialAdminPassword文件中,路径会在页面中展示,你需要找到文件中的密码粘贴到密码输入框中(如下图)
    截屏2025-11-07 11.18.54.png
  2. 安装jenkins插件,推荐的就行(如图)
    image.png
  3. 设置管理员账户密码,登录之后进入首页

二. 配置凭证

自测只配置用户名密码就可以,apiToken测试连接可以通但项目中不能选,密钥对的话一直不通,原因没找到

1. 添加凭证位置

jenkins =》设置 =》凭证 =》系统 =》全局 =》 添加凭证

1
image.png
2
image.png
3
image.png
4image.png

2. 添加gitlab用户名密码凭证

image.png

3.apiToken凭证
1. 先去gitlab中获取项目访问令牌

image.pngimage.png
创建完成之后 复制秘钥,只会出现一次,保存好,不然需要重新创建

2. jenkins添加凭证页面

image.png

4. 密钥对
1.生成密钥对
  • 首先在jenkins所在容器(没使用docker的话在宿主机上操作就行)生成密钥对
    ssh-keygen
    image.png
  • 生成密钥对之后~/.ssh文件夹下多了两个文件,pub后缀名是公钥,另一个是私钥
    image.png
2.配置密钥对
  • gitlab配置公钥:
    image.png
    image.png
  • jenkins配置私钥
    image.png
5.完成之后,列表中会展示出来

image.png

三.创建jenkins任务

image.png
image.png

1. 基本信息

image.png

2. 代码管理

image.png
我这里用密钥对凭证没有通过(如下图),因为用的市公司的gitlab服务,没有权限操作,所以这个问题就没深究,等本地部署一个gitlab服务再来补充
image.png

3. 触发器配置

在这里插入图片描述

生成令牌,gitlab webhook要用
image.png

四.gitlab webhook配置

1. 进入到你代码仓库中image.png
2. 进入到webhook配置image.png

image.png

五.测试

到这里,推送代码就可以触发jenkins任务了

1. 在gitlab项目中 webhooks列表测试一下,也可以手动提交下代码测试一下

image.png

2. 在项目中配置下构建脚本

image.png

3.查看构建结果

image.png
image.png
image.png

更多推荐