【问题标题】:how to forward docker port 2375 from virtualbox to host os windows 10如何将docker端口2375从virtualbox转发到主机os windows 10
【发布时间】:2018-02-07 07:33:14
【问题描述】:

我创建了一个 debian vm 来运行我的 docker 主机。

网络统计

tcp 0 0 127.0.0.1:2375 0.0.0.0:* LISTEN 1260/dockerd

之后,我为端口2375 设置端口转发,如许多在线教程中所述。

接下来我在我的 windows 10 主机操作系统的 cmd 中curl

C:\Users\me>curl localhost:2375
curl: (56) Recv failure: Connection was reset

请注意,连接到 VM 的 SSH 端口正在工作。

C:\Users\me>curl localhost:666
SSH-2.0-OpenSSH_7.4p1 Debian-10+deb9u1
Protocol mismatch.

谁能告诉我我错过了什么?我是否必须允许端口2375从默认情况下允许SSH端口的外部调用?

【问题讨论】:

    标签: docker virtualbox portforwarding


    【解决方案1】:

    问题在于您的 docker 监听 IP。

    tcp 0 0 127.0.0.1:2375 0.0.0.0:* LISTEN 1260/dockerd
    

    127.0.0.1 表示它只监听从 VM 内部生成的连接。

    您应该将 docker 守护进程更改为使用 0.0.0.0:2375。然后你的端口转发就可以了

    【讨论】:

    • 会尝试一下 - 0.0.0.0:2375 到底代表什么?没有那么多网络背景
    • 当你使用0.0.0.0时,它意味着监听可用的接口。因此,如果您的 VM 有多个以太网接口,那么它将在每个接口上进行侦听。当您的主机访问虚拟机时,它是外部流量。而127.0.0.1 是本地环回地址。哪个指向上下文中的机器
    • 啊好吧! 10.0.2.15 是虚拟机实际拥有的地址 - 所以我尝试了 0.0.0.0 的插入,它也有效。
    • 那个接口会引入外部流量,这就是为什么
    猜你喜欢
    • 1970-01-01
    • 2012-03-21
    • 2016-07-17
    • 2013-07-20
    • 1970-01-01
    • 2013-09-30
    • 1970-01-01
    • 2015-11-25
    相关资源
    最近更新 更多