docker - 使用docker daemon连接到Kubernetes kops pod

标签 docker kubernetes kops

我使用kops创建了Kubernetes集群(在AWS上),我想以root身份访问我的一个节点。根据this post,只有使用Docker命令才有可能。
当我键入docker image ls时,我什么也没得到。当我使用minikube时,我使用minikube docker-env解决了这个问题,并从输出中将最后一行复制到新的CMD行@FOR /f "tokens=*" %i IN ('minikube docker-env') DO @%i
(我正在使用Widnows 10)并使用上述过程,在键入docker image lsdocker image ps后,我能够看到所有minikube pods 。有什么方法可以对用kops创建的pod进行同样的处理吗?

我能够将其连接到Kubernetes节点,在其上安装docker,然后我可以连接到指定-u根开关的Pod,但我想知道是否可以从主机(在我的情况下为Windows 10)执行相同操作

最佳答案

尚不清楚您要做什么。因此,我将根据这种情况在此处提供一些常规信息:您已经使用Kops在AWS上创建了一个K8S集群

我想以root身份访问我的AWS节点之一

这与 kops 无关,也与 Docker 无关。这是基本的AWS管理。您需要检查您的AWS控制台管理以获取所有信息以连接到您的节点。

我想查看Windows笔记本电脑中的所有docker镜像

同样,这与 kops 无关。 Kops是Kubernetes发行版。在Kubernetes中,可以管理的最小计算单位是 pod 。您无法使用kubernetes直接管理docker容器或图像。
因此,如果您想查看您的Docker镜像,则需要以某种方式连接到您的AWS节点,然后执行

docker image ls

实际上,这就是您在minikube示例中所做的事情。您只是在minikube管理的VM上执行docker命令。

有关Pod here的更多信息

我想查看所有使用kops创建的 pods

好吧,假设您已成功配置系统以使用kops访问AWS(有关here的更多信息),则只需直接执行任何kubectl命令即可。例如,要列出位于kube-system命名空间中的所有pod:

kubectl -n kube-system get po

希望这可以帮助 !

关于docker - 使用docker daemon连接到Kubernetes kops pod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57249249/

相关文章:

Docker-entrypoint.sh 为带有 golang 的 ARM 镜像生成 "not found"

java - 使用 bmuschko/gradle-docker-plugin 进行 Gradle 清理任务

kubernetes - 如何在 kubernetes 中将命令从 pod 运行到主机

kubernetes - 了解 Kubernetes 用户

postgresql - Docker postgres 持久性和容器生命周期

docker - 在现有k8s集群上预取docker镜像

amazon-web-services - Kubernetes对象元数据中的引用ConfigMap/Secret

kubernetes - 使用 kops 启用 Kubernetes PodPresets

amazon-web-services - 如何从 EKS/KOPS 集群下运行的 Pod 访问 AWS?

maven - 无法从外部Docker容器访问Spring Boot @RestController