gpt4 book ai didi

kubernetes - 如何在 Kubernetes 部署中使用动态/可变图像标签?

转载 作者:行者123 更新时间:2023-12-04 13:10:06 24 4
gpt4 key购买 nike

在我们的项目中,也使用 Kustomize,我们的基础 deployment.yaml文件如下所示:

apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:IMAGE_TAG # <------------------------------
ports:
- containerPort: 80
然后我们使用 sed替换 IMAGE_TAG使用我们要部署的镜像版本。
有没有更复杂的方法来做到这一点,而不是使用 sed 编辑文本 yaml 文件? ?

最佳答案

有一个特定的变压器称为 images transformer .
您可以按原样保留您的部署,带或不带标签:

apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
然后在您的自定义文件中:
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

resources:
- deployment.yaml

images:
- name: nginx
newTag: MYNEWTAG
请记住,这将替换 kustomization 文件中包含的所有资源的所有 nginx 图像的标签。如果您需要运行多个版本的 nginx,您可以用占位符替换部署中的图像名称,并在转换器中使用不同的条目。

关于kubernetes - 如何在 Kubernetes 部署中使用动态/可变图像标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66317628/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com