微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用'localhost'连接到docker-machine

如何解决使用'localhost'连接到docker-machine

您可以向前添加VirtualBox端口,以将Docker主机上的端口映射到本地计算机。

假设您的docker机器被称为“认”,并且您要将容器中的端口80映射到localhost:8888,则可以运行:

vBoxmanage modifyvm default --natpf1 "nameformapping,tcp,,8888,,80"

或VM是否正在运行

vBoxmanage controlvm default natpf1 "nameformapping,tcp,,8888,,80"

也可以在VM设置的VirtualBox UI中完成此操作。这是VirtualBox的文档https://www.virtualbox.org/manual/ch06.html#network_nat

您还需要将容器上的端口映射到docker计算机上的端口,然后在启动容器时执行此操作(这也假设您在Dockerfile中有一个“ EXPOSE 80”命令)

docker run -p 80:80 mycontainer

https://docs.docker.com/engine/reference/run/

另请参阅:https ://github.com/boot2docker/boot2docker/blob/master/doc/WORKAROUNDS.md

解决方法

有某些功能,例如不带https的JavaScript服务工作者,仅可在localhost上运行,但是当我使用在docker-
machine上运行的docker-compose在docker容器内运行我的应用程序时,我需要使用我从那里得到的地址

docker-machine ip default

有没有办法映射localhost到该IP?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。