如何从Kubernetes中的命令行运行一次性容器(如docker run)?
我想从Kubernetes集群中的命令行运行一个一次性容器。相当于:如何从Kubernetes中的命令行运行一次性容器(如docker run)?,kubernetes,Kubernetes,我想从Kubernetes集群中的命令行运行一个一次性容器。相当于: docker run --rm -it centos /bin/bash 是否有一个kubectl等效物?的kubectl等效物 docker run --rm -it centos /bin/bash 是 注: 这将创建一个名为tmp shell的Pod。如果您没有指定--restart=Never,将创建一个Deploment(信用:Urosh t的答案) --rm确保在外壳退出时删除Pod 如果要从shell分
docker run --rm -it centos /bin/bash
是否有一个
kubectl
等效物?的kubectl
等效物
docker run --rm -it centos /bin/bash
是
注:
- 这将创建一个名为
的Pod。如果您没有指定tmp shell
,将创建一个Deploment(信用:Urosh t的答案)--restart=Never
确保在外壳退出时删除Pod--rm
- 如果要从shell分离并使其能够重新连接,请省略
。然后,您将能够在退出外壳后使用:--rm
重新连接kubectl attach$pod name-c$pod container-i-t
- 如果shell没有启动,请检查集群是否资源不足(
)。您可以使用kubectl descripe nodes
指定资源请求:--requests
--requests='': The resource requirement requests for this container. For example, 'cpu=100m,memory=256Mi'. Note that server side components may assign requests depending on the server configuration, such as limit ranges.
(信用:)要创建
Pod
而不是部署,并在退出时将其自身移除,请尝试以下操作:
kubectl run curl-debug --rm -i --tty --restart=Never --image=radial/busyboxplus:curl -- /bin/sh
--restart=Never
标志用于创建Pod
而不是部署
对象
此外,此映像重量轻,下载速度快,有利于网络调试
希望这有助于kubectl运行测试吊舱--generator=run pod/v1--image=busybox--image-pull-policy=IfNotPresent--restart=Never--rm--attach--ping-c5谷歌。com@Dmitry我在哪里可以找到这些信息:$pod container
?@FelipePereira您可以执行类似于kubectl description po$pod
的操作,其中将列出所有在pod中运行的容器,其中$pod是部署创建的pod的名称。谢谢!我将答案更新为包含--restart=Never
。
kubectl run curl-debug --rm -i --tty --restart=Never --image=radial/busyboxplus:curl -- /bin/sh