如何将docker端口2375从virtualbox转发到主机操作系统windows 10

如何将docker端口2375从virtualbox转发到主机操作系统windows 10,docker,virtualbox,portforwarding,Docker,Virtualbox,Portforwarding,我创建了一个debian虚拟机来运行docker主机 netstat tcp 0 0 127.0.0.1:2375 0.0.0.0:*收听1260/dockerd 之后,我为port2375设置端口转发,如许多在线教程中所述 接下来,我将在windows 10主机操作系统的cmd中执行curl C:\Users\me>curl localhost:2375 curl: (56) Recv failure: Connection was reset 请注意,连接到VMs SSH端口正在工

我创建了一个debian虚拟机来运行docker主机

netstat

tcp 0 0 127.0.0.1:2375 0.0.0.0:*收听1260/dockerd

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

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

C:\Users\me>curl localhost:2375
curl: (56) Recv failure: Connection was reset
请注意,连接到VMs SSH端口正在工作

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

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

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
的替代,它也起了作用。这是一个会带来外部流量的接口,这就是原因