根据文档:
https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#runkubectl run NAME --image=image
将运行图像。
一些问题:
最佳答案
雪灾,您是对的。这基本上与docker run命令相同。因此,使用kubectl run NAME --image=image
可以从名为NAME
的docker镜像中准确运行一个名为image
的pod。
您可以使用kubectl describe pod NAME
检查确切发生了什么
这是kubectl run nginx --image=nginx
的示例
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 89s (x2 over 89s) default-scheduler 0/2 nodes are available: 2 node(s) had taints that the pod didn't tolerate.
Normal Scheduled 19s default-scheduler Successfully assigned default/nginx-7cdbd8cdc9-glkxq to centos-master
Normal Pulling 18s kubelet, centos-master pulling image "nginx"
Normal Pulled 14s kubelet, centos-master Successfully pulled image "nginx"
Normal Created 14s kubelet, centos-master Created container
Normal Started 14s kubelet, centos-master Started container
因此,在
kubectl run
之后发生了什么:由于污点而失败,因为我的节点处于NotReady状态(不是
目前很重要,但您可以阅读更多有关它的信息。here)
必要。
* here,您可以找到一篇有趣的文章,以更详细的方式对此进行解释。
该名称与pod关联,因为Pod是Kubernetes中最小的工作单元。每个 pods 可以包含一个或多个容器。 Pod中的所有容器都具有相同的IP地址和端口空间,可以访问托管该Pod的Node上的共享存储。
基本上
kubectl
命令行工具支持几种不同的create and manage Kubernetes对象的方式:*您可以在StackOverflow answer或Medium article中找到有关它们的更多信息。
run
命令是命令式方法的一个示例。是最简单的开始关于kubernetes - kubectl运行名称-澄清,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54109560/