在 Helm 中,如果不分发应用程序,存储库是否有用途?

In Helm, is there a purpose to a repository if the application isn't being distributed?

将 Helm 与 Kubernetes 结合使用时,如果您不打算在组织外部分发应用程序,是否有创建远程 helm repository 的用例?

即。你有 my-python-app,目录结构如下:

app.py
chart.yaml
templates/
   - my-app-deployment.yml
   - my-app-service.yml
values.yml

您计划通过检查可部署的提交哈希 运行 docker builddocker push 以及 helm upgrade -i 在您的 CI 服务器上部署此应用程序.

将图表推送到此应用的私有 helm 存储库是否有任何好处?

这始终取决于您的用例。

但是,如果您的组织中有不同的开发人员,他们可能会受益于用于开发和本地测试的远程存储库。 假设我正在开发应用程序 A,我需要应用程序 B 运行ning 在本地进行测试。我可以克隆应用程序 B 所在的存储库,并在该存储库上安装 helm chart。但是如果图表是在远程存储库中发布的,我什至不需要首先克隆应用程序的存储库,因为我可以 运行 helm install。 Helm 存储库还存储了应用程序的不同版本,因此它提供了轻松安装应用程序 B 的不同版本的机会。

总而言之,如果您发现自己在本地安装 charts,通常需要特定的应用程序版本,我认为这是值得的。