# Jenkins参数化构建过程

# 需求分析

image-20250330114945634

在192.168.5.203的服务器上构建docker镜像。docker镜像的名字命名格式是 项目名:版本号 。

问题是这个版本号现在是写死在项目的命令中的。

我们期望项目在gitlab提交时取项目最新的tag标签为版本号。

# 参数化构建过程

git参数

image-20250330115726142

勾选之后会出现一个 “添加参数”的选项。所谓添加参数就是给我们添加一个环境的变量。依据这个变量我们进行后续的处理。

image-20250330115811193

image-20250330120128753

选着git参数 后。会新增4个项我们填写。

名称:环境变量名。

image-20250330120217293

image-20250330120430508

最终填写完的效果如下:

image-20250330120545580

# 构建命令的修改

在构建部分原本的package前新增Shell,现⾏checkout指定的版本, $tag引⽤选择的版本号 。

git checkout $tag
1

image-20250330121351708

image-20250330121416819

image-20250330121449245

image-20250330121544267

原本192.168.5.203(harbor服务器) Exec command,将所有 1.0 改为$tag进⾏引⽤ 。

docker build -t 192.168.5.203:80/public/myproject:$tag /usr/local/
docker login -u admin -p Harbor12345 192.168.5.203:80
docker push 192.168.5.203:80/public/myproject:$tag
1
2
3

image-20250330123643380

原本192.168.5.11(⽬标服务器:就是将镜像运行测试的服务器)的Exec command位置,将 1.0 改为$tag 。

docker rm -f myproject
docker run -d -p 80:80 --name=myproject 192.168.5.203:80/public/myproject:$tag
1
2

image-20250330123716712

image-20250330123754935

# 测试参数构建过程

image-20250330124013489

image-20250330124038458

image-20250330124121874

image-20250330124135778

image-20250330124709481

jenkins上开始构建项目。

image-20250330124753713

image-20250330135059386

构建成功!

image-20250330135250662

目标服务器也拉取运行成功了!

image-20250330135310010

验证运行的结果:

image-20250330135430967

下面我们构建1.0.1版本的镜像。

image-20250330135527971

验证1.0.1版本的运行的结果:

image-20250330140159267

# harbor验证

还没有构建前的harbor仓库里面的镜像。

image-20250330130646641

我开始构建1.0.0版本的镜像。

image-20250330151855790

Last Updated: 4/2/2025, 5:27:28 AM