有没有办法将docker socket从一个容器安装到另一个容器?

问题描述 投票:1回答:1

我正在寻找将docker socket从一个容器安装到另一个容器而不涉及主机。可能吗?我四处搜寻,找不到这种情况的例子。问题是主机使用了一个非常旧版本的docker,所以我在容器内设置了docker,它可以正常工作。现在我需要其他docker容器来使用基础容器中的套接字而不是主机。有没有办法实现这个目标(在kubernetes)?

sockets docker kubernetes
1个回答
1
投票

唯一的方法是使用类型为socket的hostPath卷,并将其挂载到多个容器中:https://kubernetes.io/docs/concepts/storage/volumes/#hostpath

即使它有效,你最终也会在“较新的码头”容器中使用“其他容器”发射容器,这不是一个好习惯。我建议使用较新的docker旋转另一个节点,将其连接到主节点,然后旋转需要访问docker sock的部分负载。您可以使用nodeSelector正确安排:https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#step-two-add-a-nodeselector-field-to-your-pod-configuration

您可以通过将控件容器转换为运算符https://www.slideshare.net/Jakobkaralus/the-kubernetes-operator-pattern-containerconf-nov-2017(使用k8s API而不是docker sock)将其移植到k8s上

© www.soinside.com 2019 - 2024. All rights reserved.