gpt4 book ai didi

docker - 如何从在同一Kubernetes集群中运行的容器连接到在Kubernetes集群中的主机VM上运行的Docker?

转载 作者:行者123 更新时间:2023-12-02 12:00:02 26 4
gpt4 key购买 nike

我正在使用其中安装了docker的docker镜像,以便运行任务以清理kubernetes集群中每个节点上的docker镜像数据。我尝试使用Daemonset,因为它将在除master之外的每个节点上运行,但是事实证明在docker容器中运行cron无效。
因此,我尝试使用定期运行的K8s Cronjob,并具有以下属性:hostNetwork: true

      volumes:
- name: dockersocket
hostPath:
path: /var/run/docker.sock
我正在运行一个Shell脚本,该脚本从上述CronJob创建的容器内运行docker命令。
但是,当我尝试使用 docker -H X.X.X.X images获取所有在kubernetes集群的节点上运行的图像时,其中X.X.X.X是k8s集群中一个节点的IP,我得到以下错误: Cannot connect to the Docker daemon at tcp://X.X.X.X:2375. Is the docker daemon running?难道我做错了什么?
如何从运行在kubernetes集群中的容器连接到在kubernetes集群的节点上运行的Docker?

最佳答案

Frame challenge:您正在做的事情不是正确的方法。
尝试访问Kubernetes集群中的基础Docker通常被认为是一个坏主意,因为它很容易导致损坏状态,难以修复。
Kubelet具有built-in garbage collection。为什么不调整配置​​呢?
如果您在大型PaaS提供商之一上运行,则节点的营业额可能会足够高(通过自动升级/其他方式),无论如何这都不是问题。

关于docker - 如何从在同一Kubernetes集群中运行的容器连接到在Kubernetes集群中的主机VM上运行的Docker?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63519389/

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