下面是我的ingress.yml文件
spec:
rules:
- host: {{- if .Values.ingress.host }} {{ tpl .Values.ingress.host . }} {{- end }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: ssl-redirect
port:
name: use-annotation
{{- range $port := .Values.container.app.port }}
- path: {{ tpl $port.path $ }}
pathType: Prefix
backend:
service:
name: {{ $.Release.Name }}
port:
number: {{ int $port.port }}
{{- end }}
{{ end }}
我想覆盖这个规则,这是我在values.yml文件中尝试做的
ingress:
scheme: internal
host: test.com
paths:
- path: /
pathType: Prefix
backend:
service:
name: ssl-redirect
port:
name: use-annotation
- path: /
pathType: Prefix
backend:
service:
name: test
port:
number: 3000
但在我部署后,它根本没有覆盖,可能是格式错误,不确定
更新
我试过了,但它还是没有覆盖进入的规则
hosts:
- host: test.com
paths:
- path: /test
pathType: Prefix
backend:
service:
name: ssl-redirect
port:
name: use-annotation
- path: /test
pathType: Prefix
backend:
service:
name: test-dev
port:
number: 3000
2条答案
按热度按时间bpsygsoo1#
ingress.yaml
应该是这样的values.yaml
另一个例子:
Ingress.yaml:https://github.com/helm/charts/blob/master/stable/ghost/templates/ingress.yaml
values.yaml:https://github.com/helm/charts/blob/master/stable/ghost/values.yaml
fnvucqvd2#
我假设这不是整个ings.yaml模板,因为如果是的话,你就完全丢失了
apiVersion
,kind
和metadata
块。:)Helm可以使用
helm create <chartName>
创建基线图表。在这个基线图中,有一个ingress.yaml
模板,对应的values.yaml
可以很好地工作,并遵循Helm的最佳实践。我建议您使用它来简化和加快您的工作流程,而不是编写自己的模板,即使您一开始并不理解它。helm create
生成的模板值得学习,因为从中可以学到很多东西,它们很好地展示了如何在编写Helm图表时解决一些常见问题,以及如何遵循标签,注解等的最佳实践。无论如何,如果你想坚持那个数据结构并创建你自己的模板,这就是我测试中使用的模板。我使用
helm template
命令来检查在提供值时是否有任何渲染错误。