【问题标题】:Spin off another container on host machine from an existing container从现有容器中分离主机上的另一个容器
【发布时间】:2017-11-02 03:55:13
【问题描述】:

我目前正在使用 Mac 版 Docker 桌面

我的要求是从另一个容器中分离出一个容器

情况

容器 A 有一个正在运行的服务,它根据请求寻找一个集群管理器并分离另一个容器 B。我已经在我的机器上启动了单节点集群管理器。我不能使用主机 network_mode,因为 MAC 的 docker 将轻量级 linux vm 公开为主机,而不是我的实际本地主机。我也试过这个:https://forums.docker.com/t/access-host-not-vm-from-inside-container/11747/7

任何可能的解决方案?

【问题讨论】:

    标签: docker docker-for-mac docker-desktop


    【解决方案1】:

    这个想法是您的容器可以访问您的主机。所以,使用 Docker 提供的Engine API

    POST /containers/create
    

    您必须发布包含新容器详细信息的 json。

    引擎 API v1.24

    守护进程侦听unix:///var/run/docker.sock,但您可以Bind Docker to another host/port or a Unix socket

    您可以使用-H tcp://0.0.0.0:2375 在所有网络接口上侦听端口 2375,或使用其 IP 地址在特定网络接口上侦听:-H tcp://192.168.59.103:2375。通常使用端口 2375 进行未加密,使用端口 2376 与守护程序进行加密通信。

    【讨论】:

    • 在端口转发的情况下,您的解决方案有效,但在“主机”网络模式的情况下,我们无法知道 Hyperkit VM 的 IP(MAC 使用的 docker)来使用 docker API。
    猜你喜欢
    • 2021-10-25
    • 2015-01-07
    • 1970-01-01
    • 1970-01-01
    • 2021-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多