Helm chart指南-系列(5)- 同步chart库

简介: 同步chart库 注意:这个样例适用于于提供chart库的Google Cloud Storage(GCS)存储bucket。 前提条件 安装gsutil 工具。这个样例依赖于gsutil rsync功能。

同步chart库

注意:这个样例适用于于提供chart库的Google Cloud Storage(GCS)存储bucket。


前提条件

  • 安装gsutil 工具。这个样例依赖于gsutil rsync功能。
  • 确保有权访问Helm 客户端文件
  • 可选:我们建议在GCS存储桶上设置对象版本控制,以防意外删除某些内容。

设置本地chart库目录

像我们在the chart repository guide中一样创建一个本地目录,并将打包的chart放入该目录中。

例如:

$ mkdir fantastic-charts
$ mv alpine-0.1.0.tgz fantastic-charts/

生成更新的index.yaml

使用Helm通过将远程存储库的目录路径和url传递到helm repo index命令来生成更新的index.yaml文件,如下所示:

$ helm repo index fantastic-charts/ --url https://fantastic-charts.storage.googleapis.com

这将生成一个更新的index.yaml文件并放置在fantastic-charts/目录中。

同步本地和远程chart库

通过运行scripts/sync-repo.sh并传入本地目录名称和GCS存储桶名称,将目录的内容上传到您的GCS存储桶。

例如:


$ pwd /Users/funuser/go/src/github.com/kubernetes/helm
$ scripts/sync-repo.sh fantastic-charts/ fantastic-charts
Getting ready to sync your local directory (fantastic-charts/) to a remote repository at gs://fantastic-charts Verifying Prerequisites.... Thumbs up! Looks like you have gsutil. Lets continue. Building synchronization state... Starting synchronization
Would copy file://fantastic-charts/alpine-0.1.0.tgz to gs://fantastic-charts/alpine-0.1.0.tgz Would copy file://fantastic-charts/index.yaml to gs://fantastic-charts/index.yaml Are you sure you would like to continue with these changes?? [y/N]} y
Building synchronization state... Starting synchronization
Copying file://fantastic-charts/alpine-0.1.0.tgz [Content-Type=application/x-tar]... Uploading gs://fantastic-charts/alpine-0.1.0.tgz: 740 B/740 B Copying file://fantastic-charts/index.yaml [Content-Type=application/octet-stream]... Uploading gs://fantastic-charts/index.yaml: 347 B/347 B Congratulations your remote chart repository now matches the contents of fantastic-charts/

更新chart库

你可能需要保留chart库内容的本地副本,或者运行gsutil rsync将远程图表存储库的内容复制到本地目录。

例如:

$ gsutil rsync -d -n gs://bucket-name local-dir/ # the -n flag does a dry run Building synchronization state... Starting synchronization
Would copy gs://bucket-name/alpine-0.1.0.tgz to file://local-dir/alpine-0.1.0.tgz Would copy gs://bucket-name/index.yaml to file://local-dir/index.yaml

$ gsutil rsync -d gs://bucket-name local-dir/ # performs the copy actions Building synchronization state... Starting synchronization
Copying gs://bucket-name/alpine-0.1.0.tgz... Downloading file://local-dir/alpine-0.1.0.tgz: 740 B/740 B Copying gs://bucket-name/index.yaml... Downloading file://local-dir/index.yaml: 346 B/346 B

有用的网址:

本文转自kubernetes中文社区-Helm chart指南-系列(5)- 同步chart库
相关文章
|
7月前
|
Kubernetes 关系型数据库 MySQL
容器 & 服务:Helm Charts配置文件分析
chart 是 Helm 的应用打包格式。chart 由一系列文件组成,这些文件描述了 K8s 部署应用时所需要的资源,比如 Service、Deployment、PersistentVolumeClaim、Secret、ConfigMap 等。 chart可繁可简,即可以只用于部署一个单独的服务,例如mysql、nginx等等,也可以用于部署整个应用,例如由HTTP服务、数据库、缓存、中间件等共同构成的复杂应用。
324 0
|
Kubernetes 搜索推荐 应用服务中间件
【kubernetes】新版helm3的三大概念+快速指南+自定义charts模板
chart:代表helm包,包含在 Kubernetes 集群内部运行应用程序,工具或服务所需的所有资源定义。 Repository(仓库):用来存放和共享 charts 的地方。 Release :运行在 Kubernetes 集群中的 chart 的实例,一个 chart 通常可以在同一个集群中安装多次,每一次安装都会创建一个新的 release。
426 1
【kubernetes】新版helm3的三大概念+快速指南+自定义charts模板
|
17天前
|
存储 Kubernetes 应用服务中间件
第七章 自定义Chart并部署一个应用
第七章 自定义Chart并部署一个应用
17 1
|
域名解析 Kubernetes JavaScript
如何开发一个完整的Helm charts应用实例(1)
如何开发一个完整的Helm charts应用实例(1)
如何开发一个完整的Helm charts应用实例(1)
|
9月前
|
存储 Kubernetes 监控
Helm Dashboard GUI 工具解析
Hello folks,今天我们介绍一下由 Komodor 推出的开源项目 Helm-Dashboard。也是继 ValidKube 之后的第二个开源项目。
113 0
|
数据安全/隐私保护 对象存储 容器
helm 3.7推送和拉取Chart
helm 3.7推送和拉取Chart
helm 3.7推送和拉取Chart
|
存储 Kubernetes Go
helm chart编写入门
helm chart编写入门
1860 0
|
存储 Kubernetes Linux
如何开发一个完整的Helm charts应用实例(2)
如何开发一个完整的Helm charts应用实例(2)
如何开发一个完整的Helm charts应用实例(2)
|
Kubernetes 编译器 Go
Helm chart 内置函数
Helm chart 内置函数
|
存储 Kubernetes 关系型数据库
helm charts 入门指南(2)
helm charts 入门指南(2)