藏云阁HelmChart仓库|1万+应用,26万+Chart

75 阅读4分钟

藏云阁 HelmChart 仓库

藏云阁 HelmChart 仓库汇聚了全球开源社区主流的 HelmChart 应用包,已经覆盖了 1 万+ 应用,26 万+ Chart 包

所有 HelmChart 包都托管在 cncfstack.com/app/helmcha… 仓库中,完全开放查询和下载使用。

藏云阁 HelmChart 仓库具有以下特点:

  • 自动发现:能够自动发现互联网上的 HelmChart 应用,并创建对应的应用仓库。
  • 合规审核:所有 HelmChart 应用在正式启用前均需要经过合规的评估和审核。
  • 持续更新:所有 HelmChart 仓库会定时同步上游的 HelmChart 包,持续保持更新。
  • 国内高速:藏云阁 HelmChart 仓库的服务位于国内,可高速便捷访问。

什么是 Helm、 helm、HelmChart 与 HelmChart仓库?

Helm 是 Kubernetes 包管理器。Helm 是查找、分享和使用软件构建 Kubernetes 的最优方式。

Helm 帮助您管理 Kubernetes 应用—— Helm Chart,即使是最复杂的 Kubernetes 应用程序,都可以帮助您定义,安装和升级。

Helm 是 CNCF 的毕业项目,由 Helm 社区维护。

‼️️ 注意: 关于 Helm 的更多信息,请访问 官网镜像:helm.website.cncfstack.com/zh/docs/ ,网站中所有的 CSS/JS 等资源均已经替换成国内资源,可以良好体验访问。而且 Helm 官方文档有中文版本。

关于 Helm、helm、HelmChart 与 HelmChart仓库:

  • Helm 与 helm:我们一般使用 Helm (大写字母开头)表示 Helm 项目,使用 helm (小写字母开头)表示 Helm 项目的命令行工具。
  • HelmChart: Helm使用的包格式称为 Chart。 Chart就是一个描述Kubernetes相关资源的文件集合。
  • HelmChart仓库:HelmChart 仓库是存放 HelmChart 包的仓库,提供HelmChart 包的查询和下载服务。

关于 helm、Helm Chart 与 HelmChart仓库的关系图:

helm、Helm Chart 与 HelmChart仓库的关系图

图中流程:

  1. HelmChart 的维护者将 HelmChart 包上传(或同步)到仓库中。
  2. “用户” 通过页面或 helm 命令在 “HelmChart仓库” 中查找需要的 HelmChart 包和版本,将其下载到本地。
  3. “用户” 使用 helm 命令将 HelmChart 包安装部署到 Kubernetes 集群中。

Helm Chart 文件结构

Helm Chart是一个组织在文件目录中的集合。目录名称就是Chart名称(没有版本信息)。因而描述WordPress的Chart可以存储在 wordpress/ 目录中。

在这个目录中,Helm 期望可以匹配以下结构:

wordpress/
  Chart.yaml          # 包含了chart信息的YAML文件
  LICENSE             # 可选: 包含chart许可证的纯文本文件
  README.md           # 可选: 可读的README文件
  values.yaml         # chart 默认的配置值
  values.schema.json  # 可选: 一个使用JSON结构的values.yaml文件
  charts/             # 包含chart依赖的其他chart
  crds/               # 自定义资源的定义
  templates/          # 模板目录, 当和values 结合时,可生成有效的Kubernetes manifest文件
  templates/NOTES.txt # 可选: 包含简要使用说明的纯文本文件

Helm保留使用 charts/crds/templates/目录,以及列举出的文件名。其他文件保持原样。

如使用 helm create test 创建的一个应用,目录结构如下:

$ helm create test
$ tree test

test
├── Chart.yaml
├── charts
├── templates
│   ├── _helpers.tpl
│   ├── deployment.yaml
│   ├── hpa.yaml
│   ├── ingress.yaml
│   ├── NOTES.txt
│   ├── service.yaml
│   ├── serviceaccount.yaml
│   └── tests
│       └── test-connection.yaml
└── values.yaml

4 directories, 10 files

藏云阁 Helm Chart 仓库

藏云阁 HelmChart 仓库提供 HelmChart 包的查询和下载服务,以及相关的管理功能。

由于同一个应用可能有多个不同的社区维护的不同发型版本,用户基于关键词搜索应用,参考搜索结果中的来源信息进行选择

藏云阁HelmChart仓库

点击应用卡片进入应用详情页面。

在详情页面中,用户可以查看 HelmChart 应用描述、最新版本、版本数量、更新时间、关键词、源码地址、安装帮助,以及所有历史版本。

HelmChart详情

其中在"安装帮助"中提供当前应用基础的 helm 命令使用说明

如 bitnami/etcd 应用为例,安装命令如下:

添加仓库
helm repo add charts.bitnami.com https://charts.cncfstack.com/charts.bitnami.com

安装Chart
helm install my-etcd charts.bitnami.com/etcd

下载Chart
helm pull charts.bitnami.com/etcd

更新Chart
helm repo update charts.bitnami.com

搜索Chart
helm search repo charts.bitnami.com

指定版本
1. 下载(pull)和安装(install)指定版本: --version 12.0.18
2. 搜索(search)时查看版本列表: --versions

藏云阁 HelmChart 仓库管理

若发现在仓库中无法检索到需要的 HelmChart 应用,可以通过 HelmChart 仓库管理功能,添加 HelmChart 应用。

HelmChart 应用创建后需要审核, 审核通过后“新增tag”(即HelmChart 版本)不需要再审核。

HelmChart管理页面

为保障安全和管理,目前的权限限制如下:

  • 任何登录的用户都可以添加 HelmChart 应用。
  • 只有管理员才可以审核 HelmChart 应用。
  • 审核通过后“新增tag”(即HelmChart 版本)不需要再审核。

在添加完应用后,后台会自动根据设置的“同步周期”进行HelmChart 应用的同步,任务检测周期为 6 小时。

如果着急使用新的 HelmChart 应用,可以通过网站底部的联系方式联系管理员,可加入技术交流群,由管理员手动立即触发同步任务。