boot2docker(Mac) NAT 容器PORT 给 主机,外部访问

boot2docker 用的Vbox,所以用VBox的命令做NAT


#先要停掉所有的容器

docker ps -a -q | xargs docker stop

#停到boot2docker

boot2docker stop

#如果容器的端口是 8080的话 (docker -p 18080:8080)

VBoxManage modifyvm "boot2docker-vm" --natpf1 "tcp-port$i,tcp,,18080,,18080";

#重启boot2docker 虚拟机

boot2docker start

#重启你自己的容器

。。。

现在可以在其他局域网机器通过 “本地IP+18080” 就可以访问到虚拟机里面容器的服务了

PS:开放10000到20000的端口

for i in {10000..20000}; do
VBoxManage modifyvm "boot2docker-vm" --natpf1 "tcp-port$i,tcp,,$i,,$i";
VBoxManage modifyvm "boot2docker-vm" --natpf1 "udp-port$i,udp,,$i,,$i";
done

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。