有两种方法
一是按照正常流程直接用yaml文件的形式发布应用到k8s集群上
二是把生成好的yaml文件发布到kubeapps应用商店,在应用商店中操作发布应用到k8s集群中
创建一个名为 mychart 的 Chart
helm create mychart
目录结构:
mychart/
├── charts
├── Chart.yaml # 描述这个 Chart的相关信息,包括名字、描述信息以及版本等
├── templates # YAML 文件的模板
│ ├── deployment.yaml
│ ├── _helpers.tpl
│ ├── ingress.yaml
│ ├── NOTES.txt # 介绍 Chart 部署后的一些信息,例如:如何使用这个 Chart、列出缺省的设置等。
│ └── service.yaml
└── values.yaml # 存储 templates 目录中模板文件中用到变量的值
Templates 目录下 YAML 文件模板的值默认都是在 values.yaml 里定义的,比如在 deployment.yaml 中定义的容器镜像。
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
其中的 .Values.image.repository 的值就是在 values.yaml 里定义的 nginx,.Values.image.tag 的值就是 stable。
$ cat mychart/values.yaml|grep repository
repository: nginx
$ cat mychart/values.yaml|grep tag
tag: stable
以上两个变量值是在 create chart 的时候就自动生成的默认值,你可以根据实际情况进行修改。
原文:https://www.cnblogs.com/sanduzxcvbnm/p/11951401.html