You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure Pipeline中通过参数修改Kubernetes的Docker镜像标签

在Azure Pipeline中动态替换Kubernetes YAML的镜像标签

给你几个实用的方案,都是在Azure Pipeline里能直接落地的:

方案一:用脚本直接替换占位符

先把你的Kubernetes YAML里的镜像标签改成占位符,比如把cronesharedwesteurope.azurecr.io/tenant-service:dev改成cronesharedwesteurope.azurecr.io/tenant-service:{{IMAGE_TAG}}。

然后在Azure Pipeline里添加一个脚本任务,根据你的代理系统选择对应的命令:

  • 如果用Linux代理,用sed命令替换:
sed -i "s/{{IMAGE_TAG}}/$(ImageTag)/g" ./path/to/your/deployment.yaml
  • 如果用Windows代理,用PowerShell命令替换:
(Get-Content ./path/to/your/deployment.yaml) -replace '{{IMAGE_TAG}}', '$(ImageTag)' | Set-Content ./path/to/your/deployment.yaml

前提是你要在Pipeline的参数里定义一个ImageTag参数,让用户在触发Pipeline时输入想要的版本(比如dev/1.0/latest)。

方案二:用Kustomize(Kubernetes官方工具)

Kustomize是Kubernetes自带的配置定制工具,可以轻松替换镜像标签,步骤如下:

  1. 在你的YAML文件同级目录下创建一个kustomization.yaml,内容如下:
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- deployment.yaml  # 指向你的原始Deployment YAML
images:
- name: cronesharedwesteurope.azurecr.io/tenant-service
  newTag: $(ImageTag)  # 这里用Pipeline参数
  1. 在Azure Pipeline里先添加一个脚本任务,运行Kustomize生成最终的YAML:
kustomize build ./path/to/your/kustomize/dir > final-deployment.yaml
  1. 然后用kubernetes@1任务部署这个final-deployment.yaml即可。

如果你的代理没有安装Kustomize,可以在Pipeline里先加一个安装脚本,比如Linux下:

curl -s "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash
mv kustomize /usr/local/bin/

方案三:用Helm模板

把你的Deployment YAML做成Helm Chart的模板,步骤大概是:

  1. 用helm create tenant-service-chart生成一个基础Chart,然后把你的Deployment内容替换到templates/deployment.yaml里,把镜像标签改成{{ .Values.image.tag }}:
image: cronesharedwesteurope.azurecr.io/tenant-service:{{ .Values.image.tag }}
  1. 在values.yaml里设置默认标签:
image:
  tag: dev
  1. 在Azure Pipeline里用Helm任务部署,指定参数覆盖标签:
helm upgrade --install tenant-service ./tenant-service-chart --set image.tag=$(ImageTag)

这些方案都能实现让用户通过Pipeline参数指定镜像版本的需求,选哪个看你现有配置的复杂度,脚本替换最轻量化,Kustomize适合纯K8s配置,Helm适合复杂的多资源配置场景。

内容的提问来源于stack exchange,提问作者PassionateDeveloper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 10:50:38