使用Skaffold批量部署Gitlab等组件时遇Helm依赖构建错误求助
问题:通过Skaffold批量部署Helm Chart失败
我在skaffold.yaml中配置了批量部署GitLab、Kafka和Penpot到Minikube,配置如下:
deploy: helm: releases: - name: gitlab chartPath: gitlab/gitlab namespace: gitlab valuesFiles: - /home/as/app/k8s/values_gitlab.yaml - name: kafka chartPath: bitnami/kafka namespace: kafka valuesFiles: - /home/as/app/k8s/values_kafka.yaml - name: penpot chartPath: penpot/penpot namespace: penpot valuesFiles: - /home/as/app/k8s/values_penpot.yaml
执行部署时出现错误:
Starting deploy... Helm release gitlab not installed. Installing... Error: could not find gitlab/gitlab: stat gitlab/gitlab: no such file or directory Helm release kafka not installed. Installing... Helm release penpot not installed. Installing... deploying "gitlab": building helm dependencies: exit status 1
我确认values文件路径正确,且能通过helm install逐个部署这些组件,我的helm repo list输出如下:
NAME URL ingress-nginx https://kubernetes.github.io/ingress-nginx bitnami https://charts.bitnami.com/bitnami gitlab https://charts.gitlab.io/ penpot http://helm.penpot.app
解决方案
问题出在chartPath的用法上:chartPath用于指定本地Chart文件的路径,而你要使用的是Helm仓库中的远程Chart,应该改用chart字段来指定仓库名+Chart名。
修改后的skaffold.yaml配置如下:
deploy: helm: releases: - name: gitlab chart: gitlab/gitlab namespace: gitlab valuesFiles: - /home/as/app/k8s/values_gitlab.yaml - name: kafka chart: bitnami/kafka namespace: kafka valuesFiles: - /home/as/app/k8s/values_kafka.yaml - name: penpot chart: penpot/penpot namespace: penpot valuesFiles: - /home/as/app/k8s/values_penpot.yaml
修改完成后执行skaffold run即可完成批量部署。若担心仓库数据过时,可先执行helm repo update再运行Skaffold。
内容的提问来源于stack exchange,提问作者lovecode
相关产品推荐
相关产品推荐

