由vagrant生成的VM实际上是隔离的,为了从主机访问它,您可以为其分配专用网络。而不是
config.vm.network:bridged尝试
config.vm.network :private_network, ip: "192.168.50.4",它应该可以解决问题
但是,这仅允许您访问VM本身,而不是容器。
为此,在运行容器时,可以添加
-p选项
例如:
docker run -d -p 8989 base nc -lkp 8989
这将在容器中的8989上运行网猫,并公开暴露该端口。由于它也与-d运行,因此容器将处于分离模式,唯一的输出将是容器的ID
为了公开端口,Docker做了一个简单的NAT。为了知道真实的端口,您可以
做
docker port <ID of the container> 8989
Netcat将可从192.168.50.4的Mac上获得:<结果>



