我在我的公司提供一个私有的docker容器,希望我的同事能够在我们的内部网络中访问,问题是我的客户操作系统是OSX,因此我只能从docker机器使用192.168.99.100:3000默认ip访问我的应用程序。
如何将扩展底座3000端口转发到我的主机80端口?
发布于 2016-03-29 21:54:42
此时Docker machine是您机器上运行在VirtualBox下的虚拟机,因此要公开您的应用程序端口,您需要将虚拟机端口映射到您的主机端口。
要实现这一点,有两种选择,但在此之前,请确保您的Docker Machine已停止运行:
docker-machine stop default # see PS below if docker machine isn't default选项1-使用VirtualBox接口
选项2-使用VirtualBox命令行
只需使用您自己的参数运行以下命令:
VBoxManage modifyvm "dev" --natpf1 "myapp,tcp,,80,,3000"最终注意事项
现在,您可以启动您的Docker Machine运行:
docker-machine start default
eval $(docker-machine env default)然后启动您的应用程序Docker容器并运行http://localhost/对其进行测试。
备注:您的Docker机器名称可能不是默认,在这种情况下,请相应更改名称。
发布于 2021-08-17 22:20:46
这可以通过ssh端口转发来实现:
ssh -L 0.0.0.0:80:localhost:3000 docker@$(docker-machine ip)它将要求您输入docker用户的密码,该密码应为tcuser。
如果您的docker-machine实例没有命名为"default“,那么您必须在其中指定它的名称,如下所示
ssh -L 0.0.0.0:80:localhost:3000 docker@$(docker-machine ip <name>)发布于 2020-12-01 05:31:49
如果您正在尝试使用以下端口运行bulletinboard示例
docker run --publish 8000:8080 --detach --name bb bulletinboard:1.0在macOs上,您可以打开VirtualBox,然后右键单击计算机-->设置-->网络-->高级-->端口转发
如果添加以下规则

然后,您应该能够使用以下命令访问应用程序
> http://localhost:8100/https://stackoverflow.com/questions/36286305
复制相似问题