Jenkins 配置 GitLab 认证并实现自动化部署

文章目录

  • [一、在 GitLab 中生成 API Token](#一、在 GitLab 中生成 API Token)
  • [二、在 Jenkins 中配置 GitLab 凭证](#二、在 Jenkins 中配置 GitLab 凭证)
  • [三、Jenkins 中配置 GitLab 连接](#三、Jenkins 中配置 GitLab 连接)
  • [四、Jenkins 任务中配置 GitLab](#四、Jenkins 任务中配置 GitLab)

在 CI/CD 流程中,Jenkins 与 GitLab 的集成是非常常见且关键的一步。本文将详细介绍 如何在 Jenkins 中配置 GitLab 认证 ,并通过 Publish Over SSH 插件实现 构建后自动部署 JAR 包到远程服务器


一、在 GitLab 中生成 API Token

首先需要在 GitLab 中生成一个用于 Jenkins 访问的 Access Token

1. 进入 Access Token 配置页面

路径如下:

复制代码
GitLab → 右上角头像 → Edit profile → User Settings → Access Tokens

2. 创建 Token

  • Name :自定义(如:jenkins-gitlab-token

  • Expiration date:可选

  • Scopes

    • api(必须)
    • read_repository(建议)

⚠️ 注意:Token 只会显示一次,请务必妥善保存。


二、在 Jenkins 中配置 GitLab 凭证

接下来,将 GitLab Token 添加到 Jenkins 凭证管理中。

1. 添加凭证

路径如下:

复制代码
Jenkins → Credentials → Domains → (global) → Add credentials

2. 凭证填写说明

  • KindGitLab API token
  • API token:粘贴上一步生成的 GitLab Token
  • ID :建议自定义(如:gitlab-api-token
  • Description:可选

保存即可。


三、Jenkins 中配置 GitLab 连接

配置 Jenkins 与 GitLab 的全局连接信息。

1. 进入系统配置

路径如下:

复制代码
Jenkins → Manage Jenkins → Configure System

2. 配置 GitLab

GitLab 配置区域填写:

  1. Connection name :自定义(如:gitlab-connection

  2. GitLab host URL

    复制代码
    http://192.168.121.140/

    (根据你的 GitLab 实际地址填写)

  3. Credentials:选择前面创建的 GitLab Token 凭证

  4. 点击 Test Connection

若配置正确,将显示 Success


四、Jenkins 任务中配置 GitLab

1. 选择 GitLab 连接

在 Jenkins Job 配置中,选择刚刚创建的 GitLab 连接:


2. 配置源码管理(Source Code Management)

在 Job 配置页面中,配置 Git 仓库信息。

关键配置说明

  • Repository URL:GitLab 项目地址
  • Credentials:选择 GitLab 凭证
  • Branch Specifier :如 */main*/master

3. 安装并配置 Publish Over SSH 插件

为了实现构建完成后将 JAR 包自动部署到服务器,需要使用 Publish Over SSH 插件。

1. 安装插件

路径如下:

复制代码
Jenkins → Manage Jenkins → Manage Plugins → Available

搜索并安装 Publish Over SSH


2. 添加 SSH 服务

安装完成后,进入配置:

复制代码
Jenkins → Manage Jenkins → Configure System → Publish over SSH

填写远程服务器信息:

  • Host
  • Username
  • Password / Key
  • Remote Directory

4. 构建后自动部署 JAR 包

在 Job 配置中,添加 Post-build Actions

1. 设置 JAR 包上传目录

2. 配置部署路径及命令

可在 Exec command 中编写启动脚本,例如:

bash 复制代码
pkill -f demo.jar
nohup java -jar /opt/app/demo.jar > app.log 2>&1 &

相关推荐
Benszen21 小时前
Ansible自动化运维实战
linux·运维·自动化·ansible
qqxhb21 小时前
23|工具生态全景:本地文件、网络、数据库、浏览器自动化
网络·数据库·自动化·ai编程·最小权限·人工确认
祭曦念1 天前
越权漏洞的克星!用爬虫自动化检测平行越权/垂直越权漏洞
爬虫·安全·自动化
lishutong10061 天前
基于 Perfetto 与 AI 的 Android 性能自动化诊断方案
android·人工智能·自动化
小猪咪piggy1 天前
【接口自动化】(3) YAML 和 JSON Schema
运维·自动化
gwjcloud1 天前
Ansible自动化运维工具
运维·自动化·ansible
wzl202612131 天前
自动化脚本模拟人工操作 — 基于RPA绕过企微API次数限制
自动化·企业微信·rpa
灵机一物1 天前
灵机一物AI原生电商小程序(已上线)-AI全链路自动化!内容推广系统架构解析(附落地细节)
人工智能·系统架构·自动化·内容推广
ACGkaka_1 天前
SpringBoot 实战(四十一):集成 Elasticsearch
spring boot·elasticsearch·jenkins
jekc8681 天前
Ubuntu-GitLab
服务器·ubuntu·gitlab