【发布时间】:2021-04-25 23:14:14
【问题描述】:
我的图表有 elasticsearch 和 mongdb 依赖,在我的图表中,结构是这样的:
├── [-rw-rw-r--] Chart.yaml
├── [drwxrwxr-x] dependency_charts
│ ├── [drwxrwxr-x] elasticsearch
│ └── [drwxrwxr-x] mongodb
├── [-rw-rw-r--] deploy.sh
├── [-rw-rw-r--] requirements.yaml
├── [-rw-rw-r--] values.yaml
├── [drwxrwxr-x] templates
│ ├── [-rw-rw-r--] proj-deploy.yaml
│ └── [-rw-rw-r--] proj-svc.yaml
但是当我尝试安装我的图表时,它会说:
Error: found in requirements.yaml, but missing in charts/ directory: elasticsearch, mongodb
当我执行 helm dep ls 时,它显示状态缺失
$ helm dep list
NAME VERSION REPOSITORY STATUS
elasticsearch 6.5.1 file://dependency_charts/elasticsearch missing
mongodb 4.0.3 file://dependency_charts/mongodb missing
版本是appVersion,我也改成chart版本了,不行。
这是官方文档:https://github.com/helm/helm/blob/master/docs/helm/helm_dependency.md https://docs.helm.sh/chart_best_practices/#repository-urls
这是 helm 版本
$ helm version
Client: &version.Version{SemVer:"v2.10.0", GitCommit:"9ad53aac42165a5fadc6c87be0dea6b115f93090", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.10.0", GitCommit:"9ad53aac42165a5fadc6c87be0dea6b115f93090", GitTreeState:"clean"}
我可以将这些图表放到charts 文件夹中,但是如果我这样做,helm 会将 mongodb 和 elasticsearch 安装在同一个图表中,这是意料之中的,我期望在同一个命名空间下有三个图表:myproj、elasticsearch、mongodb。
有人知道我做错了什么吗? 谢谢。
【问题讨论】:
-
使用 requirements.yaml,对于 elasticsearch 和 mongodb,它们已经以图表形式存在
-
@c4f4t0r,感谢您的回答,目前我不想从外部环境中提取图表,我想使用本地图表。你对此有什么想法吗?
-
@c4f4t0r,谢谢,我已经看过那个页面了,官方文档也可以在这里找到docs.helm.sh/chart_best_practices/#repository-urls,所以我试着找出我的操作有什么问题
标签: kubernetes-helm