小编L. *_*man的帖子

通过 kubernetes/client-go 修补部署

很难弄清楚出了什么问题。我有一个远程 kubernetes 集群,并已在本地复制配置。我知道这是正确的,因为我已经得到了其他可以为我工作的命令。

我无法开始工作的是部署补丁。我的代码:

const namespace = "default"
    
var clientset *kubernetes.Clientset

func init() {
    kubeconfig := "/Users/$USER/go/k8s-api/config"
    config, err := clientcmd.BuildConfigFromFlags("", kubeconfig)
    if err != nil {
        log.Fatal(err)
    }

    // create the clientset
    clientset, err = kubernetes.NewForConfig(config)
    if err != nil {
        panic(err.Error())
    }
}

func main() {
    deploymentsClient := clientset.ExtensionsV1beta1().Deployments("default")

    patch := []byte(`[{"spec":{"template":{"spec":{"containers":[{"name":"my-deploy-test","image":"$ORG/$REPO:my-deploy0.0.1"}]}}}}]`)
    res, err := deploymentsClient.Patch("my-deploy", types.JSONPatchType, patch)
    if err != nil {
        panic(err)
    }
    fmt.Println(res)

}
Run Code Online (Sandbox Code Playgroud)

我得到的只是: panic: the server rejected our request due to an error …

kubernetes kubernetes-go-client client-go

3
推荐指数
1
解决办法
9987
查看次数