小编典典

在docker-machine中进行端口转发?

docker

由于boot2docker已弃用,因此我已切换到,docker-machine但我不知道如何从中打开端口docker- machine。在boot2docker我可以这样做:

boot2docker ssh -L 27017:localhost:27017

只要SSH连接打开,它将把端口27017从VirtualBox转发到本地主机27017。请注意,我不是在寻找一种在VirtualBox中永久打开端口的方法。我怎样才能做到这一点docker- machine


阅读 498

收藏
2020-06-17

共1个答案

小编典典

您仍然可以从docker机器使用的VirtualBox中访问VBoxmanage.exe命令:

VBoxManage controlvm "boot2docker-vm" natpf1 "tcp-port27017,tcp,,27017,,27017";
  • 使用docker-machine info让您的虚拟机的名称。
  • 使用modifyvm如果VM尚未启动。

请参阅此答案中的实际示例。


这是当前的解决方法,有待将参数传递给docker-machine ssh:参见问题691

另一个解决方法是 转发端口, 而是 直接使用VM的IP:

 $(docker-machine ip default)

作为评论的SDC:

您可以通过以下方法确认端口转发设置正确

 VBoxManage showvminfo boot2docker-vm | grep "NIC.* Rule"
2020-06-17