【发布时间】:2019-03-06 14:39:11
【问题描述】:
我希望在不同的环境中有一个稍微不同的部署配置。也就是说,在 Prod 和 Ver 中,我不希望部署所有容器。
使用 docker-compose,我们通过合并增量 docker-compose 文件来解决这个问题,例如:docker-compose up -f docker-compose.yml -f docker-compose-prod.yml
如何使用 Helm 图表来做到这一点? 我们有一个顶部有 Chart.yaml 和 values.yaml 的结构,然后在子文件夹中为每个容器创建一个 yaml 文件。天真的解决方案是复制该结构并省略一些图表文件,但我希望每个服务只有一个文件(最多一个文件!)。
我们使用 CircleCI 部署到 AKS。
总结一下: 今天,每个服务都有自己的 yaml 文件,并且在每次部署时,它们都会被部署。我想配置我的图表,以便在某些环境中只部署一部分服务。
编辑:
kubectl 可以使用选择器,例如kubectl create cfg.yaml --selector=tier=frontend 或kubectl create cfg.yaml --selector=environment=prod,并且我已经标记了我的容器,所以这很简单。但是helm install 没有可能接受类似的标志并将其传递给 kubectl。
【问题讨论】:
标签: kubernetes-helm