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 &

相关推荐
微硬创新31 分钟前
老旧产线改造:耐达讯自动化16路4‑20mA转PROFINET的工程实践
人工智能·网络协议·自动化·信息与通信
HiDev_1 小时前
【非标自动化】2、认识元器件(固态继电器)
运维·自动化
明达智控技术1 小时前
国产 PLC 落地立库自动化,MC5000边缘智能控制器破局
运维·自动化
cdprinter3 小时前
信刻——留置谈话音视频数据集中自动刻录归档解决方案
自动化·音视频
桐桐桐3 小时前
PDF 翻译工具横评与自建批量方案:从在线工具到 Python 自动化
python·pdf·自动化
安科瑞-小李5 小时前
铁路智能运维进化路线:自动化→状态可视→预测维护
运维·自动化·数据采集·能耗可视化
Jeanyia5 小时前
GitLab 配套 Git 常用命令
git·gitlab
酷可达拉斯6 小时前
自动化运维-Ansible任务控制与流程控制
运维·自动化·ansible
HiDev_6 小时前
【非标自动化】2、认识元器件(电机保护器)
运维·自动化
深念Y6 小时前
基于 NapCat 与本地 RAG 的群聊 AI 机器人方案(ARM64 部署)
人工智能·ai·机器人·node.js·自动化·情感陪伴·bot