一尘不染

如何将docker-machine端口转发到OSX上的主机端口?

docker

我在公司中提供一个私有Docker容器,并希望我的同事能够在我们的内部网络中访问,问题是我的来宾操作系统是OSX,因此我只能使用192.168.99.100:3000访问我的应用程序来自docker机器的默认IP。

如何将docker-machine 3000端口转发到主机80端口?


阅读 259

收藏
2020-06-17

共1个答案

一尘不染

目前,Docker Machine是在您计算机中VirtualBox下运行的虚拟机,因此要公开您的应用程序端口,您需要将虚拟机端口映射到您的主机端口。

为此,有两个选择,但是在确保停止运行Docker Machine之前,请执行以下操作:

docker-machine stop default     # see PS below if docker machine isn't default

选项1-使用VirtualBox界面

  • 打开VirtualBox管理器
  • 选择您的Docker Machine VirtualBox映像(例如:默认)
  • 打开设置->网络->高级->端口转发
  • 添加您的应用名称,所需的主机端口(例如:80)和您的访客端口(例如:3000)

选项2-使用VirtualBox命令行

只需使用您自己的参数运行以下命令:

VBoxManage modifyvm "dev" --natpf1 "myapp,tcp,,80,,3000"

最后考虑

现在,您可以启动运行的Docker Machine:

docker-machine start default
eval $(docker-machine env default)

然后,只需启动应用程序Docker容器并运行http:// localhost /对其进行测试

PS:您的Docker机器名称可能不是 默认 名称,在这种情况下,请相应更改名称。

2020-06-17