如何在Helm存储库中配置“Charts Base URL”
Helm在存储库设置中有一个“Base Charts URL”字段,该字段必须在某些条件下正确配置,以便Artifactory缓存工件,并让Helm客户端通过Artifactory提取工件。
这个字段是做什么的?
当这个字段出现时,“Base Charts URL”字段将更新索引。yaml文件中包含了远程存储库中图表的对应路径,这样当Helm客户端获取工件时,它将通过Artifactory获取它们。
“Charts Base URL”字段需要是包含Charts /tgz文件的基本路径。
例如:
在以下github回购:
索引。yaml文件指向下面路径中的Artifacts
- https://github.com/fluxcd-community/helm-charts/releases/download/flux2-2.0.0/flux2-2.0.0.tgz
- https://github.com/fluxcd-community/helm-charts/releases/download/flux2-1.7.0/flux2-1.7.0.tgz
- https://github.com/fluxcd-community/helm-charts/releases/download/flux2-1.3.0/flux2-1.3.0.tgz
这意味着“基本图表URL”应该是:
https://github.com/fluxcd-community/helm-charts/releases/download/
如果有多个“基本图表URL”:
如果是索引。yaml文件指向多个“基本图表URL”,例如:
- https://prometheus-community.github.io/helm-charts/prometheus-11.0.0.tgz
- https://github.com/prometheus-community/helm-charts/releases/download/prometheus-13.0.1/prometheus-13.0.1.tgz
然后Artifactory有一个功能来覆盖它(存储库设置- >高级选项卡)
选中“启用依赖项重写”复选框,然后添加模式URL
所以在这个例子中,它将是:
“Base Charts URL”将是:
如果没有填充“Chart Base URL”字段,在针对Artifactory配置Helm客户端时,它将获取索引。yaml文件(来自Artifactory),然后它将读取索引中的值。Yaml文件,这是直接指向上游。然后客户端将尝试直接从上游下载图表,绕过Artifactory。
