gpt4 book ai didi

java - 使用 Fabric8 的 Kubernetes 客户端 API

转载 作者:行者123 更新时间:2023-12-01 16:21:46 25 4
gpt4 key购买 nike

我正在使用 Kubernetes 的 Fabric8 Java 客户端库。我无法找到对容器执行更新操作的最佳方法。基本上我想做的是我已经创建了一个容器镜像为“nginx”的 Pod,现在我想将此镜像更新为“nginx:1.16.1”。

我尝试做的是

client.pods().inNamespace(podsModel.getNamespace()).withName(podsModel.getNamespace()).edit().editSpec()
.editContainer(0).withNewImage("nginx:1.16.1").endContainer().endSpec().buildSpec();

最佳答案

您应该能够使用上面的代码编辑 Pod 规范,您只需要使用 done() 而不是 buildSpec() :

try (KubernetesClient client = new DefaultKubernetesClient()) {
Pod updatedPod = client.pods().inNamespace(namespace)
.withName(podName)
.edit().editSpec().editContainer(0)
.withImage("nginx:1.16.1")
.endContainer().endSpec().done();
}

但是,您不应该单独使用 Pod 。 Pod 被设计为相对短暂的一次性实体。您应该使用一些可以代表您管理 Pod 对象的 Controller 资源(DeploymentStatefulSet 等)。

维护者提供了一份文档,用于常见的 Fabric8 Kubernetes Client 操作。您也可以看一下:Fabric8 Kubernetes Client Cheat Sheet

关于java - 使用 Fabric8 的 Kubernetes 客户端 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62254034/

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