如何在Kubernetes清单中显示变量替换?

时间:2018-10-20 22:19:30

标签: kubernetes

我正在学习Kubernetes,并计划使用Kubernetes清单对我的应用程序进行连续部署。

我想在清单中将我的应用定义为DeploymentService,并使CD系统在清单文件上运行kubectl apply -f

但是,我们当前的设置是使用该应用程序版本的git commit的SHA标记我们的Docker映像。

是否存在Kubernetes原生方式将图像标签表示为变量,并使CD系统将该变量设置为正确的git SHA?

1 个答案:

答案 0 :(得分:1)

在这种情况下,您应考虑使用图表,在这些图表中,模板的骨架(或您所谓的最讨厌的骨架)与其从发行版更改为另一个的值之间是分开的。

templates / deployment.yaml 中:

spec:
  containers:
    - name: {{ template "nginx.name" . }}
      image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"

并在 values.yaml 中:

image:
  repository: nginx
  tag: 1.11.0

查看完整的示例here