docker-machine 通过命令的方式端口映射到主机
我在公司中提供一个私有(private)Docker容器,希望我的同事能够访问我们的内部网络,问题是我的 guest 操作系统是OSX,因此我只能使用192.168.99.100:3000访问我的应用程序来自docker机器的默认IP。
如何将docker-machine 3000端口转发到主机80端口? 目前,Docker Machine是在您计算机中VirtualBox下运行的虚拟机,因此要公开您的应用程序端口,您需要将虚拟机端口映射到您的主机端口。
为此,有两个选择,但是在确保停止运行Docker Machine之前,请执行以下操作:
docker-machine stop default # see PS below if docker machine isn't default
选项1-使用VirtualBox界面 打开VirtualBox Manager 选择您的Docker Machine VirtualBox镜像(例如:默认) 打开设置->网络->高级->端口转发 添加您的应用名称,所需的主机端口(例如:80)和您的访客端口(例如:3000)
选项2-使用VirtualBox命令行
只需使用您自己的参数运行以下命令: VBoxManage modifyvm "default" --natpf1 "myapp,tcp,,80,,3000"
最后考虑事项
现在,您可以启动运行的Docker Machine: docker-machine start default eval $(docker-machine env default)
然后只需启动应用程序Docker容器并运行http://localhost/对其进行测试。
附言:您的Docker机器名称可能不是默认,在这种情况下,请相应更改名称。
