在Artifactory中掌握你的舵图库

根据我们的Helm Chart存储库支持的初始版本在Artifactory几周前,是时候进入快速轨道,让您的Helm存储库启动并运行了。只是一个简短的概述,Helm是Kubernetes的包管理器,可以帮助您管理Kubernetes应用程序使用执掌图表.
Artifactory现在本地支持执掌存储库,让您完全控制部署到Kubernetes的过程。它支持代理远程Helm存储库,展开舵图到本地存储库,当然,使用虚拟存储库来聚合所有其他Helm Chart存储库,这样您就可以通过单个端点访问它们。
戴上头盔,享受骑行吧!
为了充分利用Artifactory中的Helm Chart存储库,我们建议最好应用这些Helm存储库实践:
虚拟存储库是正确的选择
Artifactory支持创建虚拟舵手存储库对于Kubernetes,其中可以包含本地和远程存储库。这允许您从为虚拟存储库定义的单个URL访问本地托管的Helm图表以及代理的远程Helm图表存储库。
使用虚拟存储库时,您将获得以下信息:
- 舵角图分辨率
Artifactory仅支持从虚拟存储库解析Helm图表。来解析舵图从本地或远程Helm图表存储库,您需要将它们聚合到虚拟Helm图表存储库中。 - 控制领域
用于搜索和解析工件的受控域。 - 轻松访问多个存储库
一旦您的所有本地和远程Helm图表存储库由一个虚拟存储库聚合,您的所有Helm图表都可以通过一个URL访问。 - 安全和私有存储库
使用虚拟存储库增加了在Artifactory中已有的安全层之外的安全层,使您可以根据Kubernetes中的项目或开发团队对Helm图表进行细粒度访问控制。
在Artifactory中定义一个虚拟Helm Chart存储库:
- 创建一个虚拟存储库.
- 设置包类型来舵.
- 属性中包含的底层本地和远程Helm存储库基本设置选项卡。
中继续配置存储库JFrog Helm客户端.
分离稳定库和孵化库
在建议使用单个虚拟存储库的同时,我们还建议在中找到的稳定图表之间保持清晰的分离稳定公舵图存储库,以及在孵化器舵图存储库。这两个文件应该聚合在两个不同的虚拟存储库中,以便在需要正式发布版本时使用一个,在需要预发布版本时使用另一个。这将确保你的构建得到你想要的图表的正确版本,并避免在Kubernetes中混淆。
在图表中使用SemVer v2版本控制
JFrog推荐使用SemVer,因为它有助于后期的版本控制,版本范围需求,以及适当的排序顺序和index.yaml的解析。
保持Helm用户的动态
头盔套装搜索在Artifactory中进行了定制,以允许用户搜索Helm存储库由“应用程序版本”和D not only by“版本”,指图表版本。应用版本是一个有用的信息,因为它可以让你的用户知道他们正在使用的应用的版本,因为图表版本可能不同。属性后,可以搜索该参数Chart.yaml文件。

重新计算索引。Yaml文件从头开始
Artifactory支持重新计算本地index.yaml如果你怀疑你的index.yaml可能是腐败。
重新计算局部index.yaml文件:
- 在树浏览器中选择你的Helm Chart存储库。
- 选择重新计算指数从右击菜单。

一旦选择了索引,就会异步计算索引。
控制虚拟回购的元数据检索缓存周期
虚拟存储库合并index.yaml文件的所有存储库,他们聚集到一个单一index.yaml文件。但是,对于聚合的本地或远程存储库之一的每个更改,重新计算聚合索引可能会占用大量资源。
为了避免为远程存储库中的每个更改重新计算聚合索引,将缓存索引,并且仅根据虚拟存储库的元数据检索缓存周期设置重新计算索引。不过,默认情况下,平均超时时间设置为10分钟是合理的;如果发现任何聚合存储库频繁更改,可以降低这个值以更频繁地重新计算索引。

在任何时候,你也可以通过清除缓存来手动触发索引的重新计算——我们称之为“Zapping”缓存,可以如下所示调用:
清除Artifactory中的缓存:
- 从工件模块树在浏览器中,选择要清除的虚拟存储库。
- 点击Zap缓存在右键菜单或选择行动从下拉菜单中。

JFrog CLI帮助您部署您的头盔图表
你可以使用JFrog CLI发布和上传你的Helm图表,因为Helm客户端目前不支持部署Helm图表。
例如,上传你所有的*。将TGZ文件切换到本地JFrog CLI上传命令:
Jfrog rt u "*。tgz”helm-local
要了解有关创建Helm chart时的一般最佳实践的更多信息,请参见图表最佳实践指南.
