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 &

相关推荐
微硬创新10 小时前
耐达讯自动化 CC-Link IE 转 PROFINET网关在污水厂智能化升级实战
人工智能·物联网·网络协议·自动化·信息与通信
壮哥_icon15 小时前
【Android 系统开发】使用 BAT 脚本高效自动化管理 /system/priv-app/ 系统应用(安装与卸载)
android·运维·自动化
xexpertS16 小时前
分布式系统过载治理:如何通过较小服务控制请求节奏
微服务·自动化
AOwhisky16 小时前
Python 学习笔记(第十三期)——运维自动化(下·前篇):远程命令执行——paramiko基础篇
运维·python·学习·云原生·自动化·运维开发·paramiko
AOwhisky17 小时前
Python 学习笔记(第十四期)——运维自动化(下·中篇):远程文件传输——paramiko进阶篇
运维·python·学习·云原生·自动化·文件传输·paramiko
Land032918 小时前
AI网页元素变化无法自动修复?自带元素自愈的自动化解决方案
运维·人工智能·ai·自动化·rpa
fengyehongWorld18 小时前
Jenkins 安装与简单配置
运维·jenkins
Urbano19 小时前
针织卫衣全流程生产工序科普:自动化替代、产能优化与设备选型实战方案
运维·自动化
ai_coder_ai19 小时前
在自动化脚本中如何实现播音?
人工智能·自动化·语音识别
AC赳赳老秦19 小时前
招投标公开数据自动化采集实战:基于 OpenClaw 的定时抓取与业务关键词精准推送
运维·服务器·数据库·自动化·测试用例·deepseek·openclaw