gpt4 book ai didi

kubernetes - Kubectl 补丁给出 : Error from server: cannot restore slice from map

转载 作者:行者123 更新时间:2023-12-02 11:55:30 29 4
gpt4 key购买 nike

我有这个入口对象,我正在尝试修补 secretName:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: hello-world
...
spec:
rules:
- host: my.host
http:
paths:
- backend:
serviceName: hello-world
servicePort: 8080
tls:
- hosts:
- my.host
secretName: my-secret

我想使用 kubectl patch 更新 secret 名称我已经尝试过:

$ kubectl patch ing hello-world -p '{"spec":{"tls":{"secretName":"updated"}}}'
Error from server: cannot restore slice from map

和:

$ kubectl patch ing hello-world -p '[{"op": "replace", "path": "/spec/tls/secretName", "value" : "updated"}]'
Error from server (BadRequest): json: cannot unmarshal array into Go value of type map[string]interface {}

有什么建议吗?

最佳答案

tls 是一个数组/切片,因此您必须像那样引用它并将其包含在原始补丁中。

$ kubectl patch ing hello-world -p '{"spec":{"tls":[{"hosts":["my.host"], "secretName": "updated"}]}}'

使 -p 正确(对我有用)的一个好方法是将它们从 YAML 转换为 JSON。您可以尝试像 this 这样的在线工具.

关于kubernetes - Kubectl 补丁给出 : Error from server: cannot restore slice from map,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61543763/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com