kubernetes 通过values.yaml公开多个容器端口

kh212irz  于 2022-12-22  发布在  Kubernetes
关注(0)|答案(1)|浏览(296)

是否有任何方法可以在values.yaml文件中传递端口数组。我希望设置多个ContainerPort。我尝试使用--set "test.containerPort={8080,10102,19905},但收到错误消息,指出io.k8s.apimachinery.pkg.util.intstr.IntOrString的类型无效:获得“数组”,应为“字符串”。
任何例子/建议都会很有帮助。

kgsdhlau

kgsdhlau1#

Helm使用Go语言的模板机制,所以它实际上是从values.yaml中获取参数,并将它们放入template/*文件中。
换句话说,如何设置多个container端口取决于所使用的Helm图表。
例如,如果具有文件template/my-statefulset.yaml

apiVersion: apps/v1
kind: StatefulSet
...
spec:
  template:
    spec:
      containers:
        ports:
{{ toYaml .Values.ports| indent 10 }}
...

然后,您可以使用下面的values.yaml设置多个容器端口。

ports:
  - name: my first port
    containerPort: 5678
  - name: my second port
    containerPort: 5679

相关问题