概述

官方文档:https://helm.sh/zh/docs/topics/chart_repository/

官方仓库:https://artifacthub.io/

Helm 仓库(Repository)是存储 Helm 图表(Chart)的地方,类似于软件包管理器的仓库(如 apt、yum 仓库)。

Helm 仓库是一个 HTTP 服务器,用于存储和共享 Helm Chart 的压缩包(.tgz 文件)及相关索引文件(index.yaml)。

索引文件(index.yaml)记录了仓库中所有 Chart 的元数据(名称、版本、描述等),供 Helm 客户端查询和下载。

常见的仓库类型

  • 官方仓库:Helm 官方维护的仓库(已归档,现推荐使用 Artifact Hub 查找社区 Chart)。
  • 社区仓库:如 BitnamiJetstack 等组织提供的仓库。
  • 私有仓库:企业内部自建的仓库,用于管理私有 Chart。

常用的helm仓库

Helm仓库管理常用配置

添加仓库

将仓库地址添加到 Helm 客户端的本地配置中

# 语法
helm repo add [仓库名称] [仓库地址] # 示例
[root@master ~]# helm repo add prometheus https://prometheus-community.github.io/helm-charts
"prometheus" has been added to your repositories
[root@master ~]# helm repo add grafana https://grafana.github.io/helm-charts
"grafana" has been added to your repositories

更新仓库索引

Helm 客户端需要定期更新仓库索引,以获取最新的 Chart 列表和版本信息。

[root@master ~]# helm repo update
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "grafana" chart repository
...Unable to get an update from the "prometheus" chart repository (https://prometheus-community.github.io/helm-charts):
read tcp [fdbd:dc01:ff:318:3ebb:26f3:26ff:6026]:39074->[2606:50c0:8001::153]:443: read: connection reset by peer
Update Complete. ⎈Happy Helming!⎈

列出本地仓库

查看当前配置的所有仓库及其地址。

[root@master ~]# helm repo list
NAME URL
prometheus https://prometheus-community.github.io/helm-charts
grafana https://grafana.github.io/helm-charts

删除仓库(Remove Repository)

从本地配置中移除不再需要的仓库。

#语法
helm repo remove [仓库名称] # 示例
[root@master ~]# helm repo remove grafana
"grafana" has been removed from your repositories
[root@master ~]# helm repo list
NAME URL
prometheus https://prometheus-community.github.io/helm-charts

搜索仓库中的 Chart(Search Charts)

从仓库中搜索符合条件的 Chart,支持模糊匹配。

# 语法
helm search repo [关键词] # 示例
[root@master ~]# helm search repo grafana
NAME CHART VERSION APP VERSION DESCRIPTION
grafana/grafana 9.2.2 12.0.1 The leading tool for querying and visualizing t...
grafana/grafana-agent 0.42.0 v0.42.0 Grafana Agent
grafana/grafana-agent-operator 0.5.1 0.44.2 A Helm chart for Grafana Agent Operator
grafana/grafana-operator v5.18.0 v5.18.0 Helm chart for the Grafana Operator
grafana/grafana-sampling 1.1.5 v1.7.5 A Helm chart for a layered OTLP tail sampling a...

查看指定仓库中Chart的版本

# 语法
helm search repo [chart名称] --versions # 示例
[root@master ~]# helm search repo prometheus/kube-prometheus-stack --versions
NAME CHART VERSION APP VERSION DESCRIPTION
prometheus/kube-prometheus-stack 72.9.1 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.9.0 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.8.0 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.7.0 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.6.4 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.6.3 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.6.2 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.6.1 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.5.3 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.5.2 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.5.1 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.5.0 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.4.0 v0.82.2 kube-prometheus-stack collects Kubernetes manif...
prometheus/kube-prometheus-stack 72.3.1 v0.82.0 kube-prometheus-stack collects Kubernetes manif...

拉取远程仓库的chart

# 语法,--version对应的是chart version,--untar自动解压,
# --destination:指定下载的 Chart 文件(.tgz)保存的目标目录(默认当前目录)。
# --repo [仓库URL] 直接从指定 URL 下载 Chart,而不使用已添加的仓库名称。
helm pull [chart名出] --version [版本号] --untar --destination [/path] --repo [仓库URL] # 示例
[root@master ~]# helm pull prometheus/kube-prometheus-stack --version 72.9.0
[root@master ~]# ll kube-prometheus-stack-72.9.0.tgz
-rw-r--r-- 1 root root 814664 Jun 3 14:45 kube-prometheus-stack-72.9.0.tgz

私有仓库相关命令

创建仓库索引文件

为本地 Chart 目录生成 index.yaml,用于搭建私有仓库。

helm repo index [目录路径] --url [仓库URL]

推送 Chart 到私有仓库

helm push [Chart路径] [仓库名称]

Helm仓库管理的更多相关文章

  1. Helm包管理工具(简介、安装、方法)

    认识Helm 每次我们要部署一个应用都需要写一个配置清单(维护一套yaml文件),但是每个环境又不一样.部署一套新的环境成本是真的很高.如果我们能够使用类似于yum的工具来安装我们的应用的话那就太好了 ...

  2. Helm简介

    什么是Helm 微服务和容器化给复杂应用部署与管理带来了极大的挑战.Helm是目前Kubernetes服务编排领域的唯一开源子项目,作为Kubernetes应用的一个包管理工具,可理解为Kuberne ...

  3. Helm一:简介

    目录 什么是Helm Helm解决的问题 Helm原理 Helm架构 Helm功能 Helm三个重要概念 Helm组件 Helm Client Tiller Server Helm实现 什么是Helm ...

  4. 简化Kubernetes应用部署工具-Helm

    [编者的话]微服务和容器化给复杂应用部署与管理带来了极大的挑战.Helm是目前Kubernetes服务编排领域的唯一开源子项目,做为Kubernetes应用的一个包管理工具,可理解为Kubernete ...

  5. Helm - Kubernetes包管理专家

    What is Helm? - The package manager for kubernetes, Helm is the best way to find, share, and use sof ...

  6. 正式开放 | 阿里云 10 亿级镜像服务正式支持 Helm Charts,云原生交付再加速!

    作者 | 阿里巴巴高级开发工程师 谢于宁(予栖) 2018 年 6 月,Helm 正式加入了 CNCF 孵化项目: 2018 年 8 月,据 CNCF 的调研表明,有百分之六十八的开发者选择了 Hel ...

  7. k8s包管理工具helm - 介绍和安装

    目录 1.Kubernetes 应用部署的挑战 2.Helm 是什么 3.Helm 组件及相关术语 4.Helm 工作原理 5.Helm 安装 5.1 客户端安装 5.2 安装服务端 Tiller 5 ...

  8. 云原生交付加速!容器镜像服务企业版支持 Helm Chart

    2018 年 6 月,Helm 正式加入了 CNCF 孵化项目:2018 年 8 月,据 CNCF 的调研表明,有百分之六十八的开发者选择了 Helm 作为其应用包装方案:2019 年 6 月,阿里云 ...

  9. Helm, 在Kubernetes中部署应用的利器

    一.背景 Kubernetes(k8s)是一个基于容器技术的分布式架构领先方案.它在Docker技术的基础上,为容器化的应用提供部署运行.资源调度.服务发现和动态伸缩等一系列完整功能,提高了大规模容器 ...

  10. 用Helm部署Kubernetes应用,支持多环境部署与版本回滚

    1 前言 Helm是优秀的基于Kubernetes的包管理器.利用Helm,可以快速安装常用的Kubernetes应用,可以针对同一个应用快速部署多套环境,还可以实现运维人员与开发人员的职责分离.现在 ...

随机推荐

  1. nuclei安装使用

    go环境安装 go 下载路径:https://golang.google.cn/dl/ 1.双击 go1.20.7.windows-amd64.msi 2.点击下一步 3.我同意,然后下一步. 4.选 ...

  2. windows使用Makefile时自动给可执行文件加上.exe后缀

    APP := main 在使用makefile的时候,一般通过变量设置自己想要编译出来的可执行文件的名字 在windows平台编译出来的可执行文件是需要.exe后缀的 识别当前操作系统 通过识别当前的 ...

  3. Vulnhub-venom

    对于该靶机,注意利用了信息收集来的21端口和80端口,网站源码发现账户,ftp匿名登录密码猜测,维吉尼亚解密,后台管理员登录,CVE文件上传RCE漏洞利用反弹shell,提权有两中,利用版本内核提权和 ...

  4. go mgo包 简单封装 mongodb 数据库驱动

    mgo是go编写的mongodb的数据库驱动,集成到项目中进行mongodb的操作很流畅,以下是对其的一些简单封装,具体使用可随意改动封装. 安装 go get gopkg.in/mgo.v2 使用 ...

  5. chrome播放webRTC的H265视频方法

    需求描述 最近有需求实现浏览器直接播放摄像头视频 鉴于Camera本身支持了rtsp流,本想web直接播放rtsp,但是还不行,搜了一下webRTC实现的效果和延迟会好一些.于是就使用了mediaMT ...

  6. 【SpringCloud】Gateway新一代网关

    Gateway新一代网关 概述简介 官网 上一代zuul 1.x https://github.com/Netflix/zuul/wiki 当前gateway https://cloud.spring ...

  7. Visual Studio 外部工具中添加 git-bash

    引言 旧版的 Visual Studio 没有集成 git 工具,并且自己也习惯用 git-bash 命令行来操作, 那么如何在旧版的 Visual Studio 快速打开 git-bash 终端呢? ...

  8. fdMemtable FDQuery json之间的一些关系

    1 procedure TForm1.btn1Click(Sender: TObject); 2 var ss,ss1: TStringStream; 3 begin 4 ss := TStringS ...

  9. Python 类型检查与类型注解:mypy 与 typing 深度解析

    Python 类型检查与类型注解:mypy 与 typing 深度解析 在 Python 动态类型语言中,mypy 和 typing 是两个提升代码健壮性的核心工具.它们通过静态类型检查与类型注解,帮 ...

  10. 2024dsfzB层考试总结

    2024B层次十一集训 10.3日 数据结构专题模拟 考试总结 FrankWKD Updated AT 2024/10/3 13:21 概述 总分:\(140/400\) Rank:\(24/87\) ...