我有一个简单而恼人的问题。我写了大量的部署,服务等。
对于staging env(我使用命名空间来分隔staging / prod环境),我正在使用带有tag:latest的图像。
对于prod env我喜欢custom:tag。但是,我想避免复制/粘贴.yml文件,并且不确定如何最好地构建我的代码以帮助实现此目标。
答案 0 :(得分:1)
曾经去过那里。我所做的是做一些简单的模板,编写自己的模板包装器,最终最终评估并完全切换到helm
“kubernetes包管理器”。
我强烈建议你采取快捷方式直接掌舵,它可以帮助很多,并且为你所拥有的东西编写基本图表是非常简单快速的解决方案。这样你就可以安装你的图表(ergo manifests)。 helm install mychart --set defaulttag=latest
或helm install mychart --set defaulttag=dev
并且不会复制
答案 1 :(得分:0)
我们使用一个部署脚本(以及其他部分)一个Jinja2组件,因此我们可以在部署清单中使用Jinja2变量和条件。缺点是清单必须通过部署管道才能变得有效" Kubernetes表现出来,因此目前无法对minikube等进行本地部署。