实现基于 Jenkins 的多服务器打包方案

实现基于 Jenkins 的多服务器打包方案

在实际项目中,我们经常会遇到需要将一个应用程序或服务部署到不同的服务器上的需求。而使用 Jenkins 可以很方便地自动化这个过程。

设置参数

首先,我们需要设置一些参数,以便在构建过程中指定要部署到哪个服务器上。在 Jenkins 中,我们可以使用参数化构建来实现这一点。具体步骤如下:

  1. 打开 Jenkins 控制台,并找到你要进行配置的项目。

  2. 点击 "配置" 进入项目配置页面。

  3. 在 "构建触发器" 部分,勾选 "This build is parameterized" 选项。

  4. 点击 "Add Parameter",选择 "Choice Parameter"。

  5. 在 "Name" 字段输入参数名称,比如 "SERVER"。

  6. 在 "Choices" 字段中填写服务器名称列表,每个名称占一行。例如:

    ServerA
    ServerB
    ServerC

  1. 点击 "保存" 保存配置。

配置服务器(如果已配置好可跳过此步骤)

接下来,我们需要对每个服务器进行配置,以便 Jenkins 能够与其进行通信并将构建结果部署到正确的服务器上。为了简化配置,我们可以使用 Jenkins 的凭据管理功能,将服务器的认证信息存储在 Jenkins 中。具体步骤如下:

  1. 在 Jenkins 控制台中,点击 "Jenkins" > "Manage Jenkins" > "Manage Credentials" 进入凭据管理页面。
  2. 点击 "Global credentials" > "Add Credentials"。
  3. 在 "Kind" 字段选择合适的凭据类型,比如 "Username with password"。
  4. 根据选定的凭据类型,填写服务器的认证信息,比如用户名和密码。
  5. 在 "ID" 字段输入一个唯一的标识符,以便后续在 Jenkins 配置中引用这些凭据。
  6. 点击 "OK" 保存凭据。

重复以上步骤,为每个服务器配置相应的凭据。

部署时选择参数部署

我们已经设置好了参数和服务器配置,现在可以开始使用它们来实现按需部署到不同服务器的功能了。具体步骤如下:

  1. 打开 Jenkins 控制台,并找到你要进行配置的项目。
  2. 点击 "配置" 进入项目配置页面。
  3. 新增一个ssh publishers
  4. 选择好对应的服务器及文件操作
  5. 最关键的是点开advance选项(如下图)
  1. 将定义每一个服务器的label 为参数对应的值

  2. 点击下一个advance(如下图)

  3. 配置参数名称为之前设置的参数名SERVER

  1. 保存

现在,当你触发构建时,Jenkins 将提示你选择要部署到哪个服务器上。选择相应的服务器后,Jenkins 将将选择的参数传递给构建脚本或命令,并执行相应的部署操作。

这样,我们就实现了基于 Jenkins 的多服务器打包方案。通过设置参数和配置服务器,我们可以在一个 Jenkins 项目中实现对不同服务器的定向部署。

相关推荐
前端郭德纲4 小时前
前端自动化部署的极简方案
运维·前端·自动化
半导体守望者15 小时前
OSAKA CI 49 MICROPROCESSOR-BASED DIGITAL ELECTRONIC PULSE COUNTER
经验分享·笔记·功能测试·自动化·制造
CASAIM16 小时前
CASAIM与韩国DOOSAN集团达成合作,开启工业制造自动化检测新篇
计算机视觉·3d·自动化
drebander17 小时前
Docker 与 CI/CD:自动化构建和部署
ci/cd·docker·自动化
AI服务老曹1 天前
通过感知、分析、预测、控制,最大限度发挥效率的智慧油站开源了
人工智能·开源·自动化·音视频
1024小神1 天前
ios苹果手机使用AScript应用程序实现UI自动化操作,非常简单的一种方式
运维·ui·自动化
游客5201 天前
自动化办公|通过xlwings进行excel格式设置
python·自动化·excel
米码收割机1 天前
【C语言】C语言 食堂自动化管理系统(源码+数据文件)【独一无二】
c语言·python·自动化
普通网友1 天前
自动化办公更简单了!新版python-office,有哪些更新?
运维·人工智能·python·stable diffusion·数据挖掘·自动化·midjourney
Zoho 阿伦1 天前
Zoho Books:简单好用的外贸订单管理系统,外贸跟单自动化处理
自动化·进销存·外贸订单管理系统·外贸跟单·进销存管理系统