首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用'localhost‘连接到docker-machine

使用'localhost‘连接到docker-machine
EN

Stack Overflow用户
提问于 2016-02-13 05:22:38
回答 3查看 25.9K关注 0票数 17

有一些特定的功能,比如没有https的JavaScript服务工作者,它们只能在本地主机上运行,但当我在docker容器中运行我的应用程序时,使用docker-compose,它运行在docker-machine之上,我需要使用我从获得的地址连接到它

代码语言:javascript
复制
docker-machine ip default

是否有办法将localhost映射到该ip?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-02-13 07:41:21

您可以添加VirtualBox端口转发,以将扩展底座主机上的端口映射到本地计算机。

假设您的停靠计算机名为"default“,并且您希望将容器中的端口80映射到localhost:8888,您可以运行:

代码语言:javascript
复制
vboxmanage modifyvm default --natpf1 "nameformapping,tcp,,8888,,80"

或者如果虚拟机正在运行

代码语言:javascript
复制
vboxmanage controlvm default natpf1 "nameformapping,tcp,,8888,,80"

这也可以在虚拟机设置中的VirtualBox UI中完成。这是来自VirtualBox https://www.virtualbox.org/manual/ch06.html#network_nat的文档

您还需要将容器上的端口映射到docker机器上的端口,这是在启动容器时执行的(这还假设您的Dockerfile中有一个"EXPOSE 80“命令

代码语言:javascript
复制
docker run -p 80:80 mycontainer

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

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

票数 33
EN

Stack Overflow用户

发布于 2016-02-16 00:14:46

编辑hosts文件会导致您的本地计算机仅直接查找为域指定的IP地址。因此,您可以将docker-machine的ip地址添加到本地计算机的etc\hosts文件中,并将容器上的端口80映射到docker-machine上的端口80

示例:

1)获取docker主机ip地址

代码语言:javascript
复制
$ docker-machine ip default
192.168.99.100

2)将此行添加到本地计算机的etc/hosts文件中

代码语言:javascript
复制
192.168.99.100 domain.com

3)检查您的机器是否正在解析域名。

代码语言:javascript
复制
$ ping domain.com
PING domain.com (192.168.99.100): 56 data bytes
64 bytes from 192.168.99.100: icmp_seq=0 ttl=64 time=0.294 ms
64 bytes from 192.168.99.100: icmp_seq=1 ttl=64 time=0.437 ms
64 bytes from 192.168.99.100: icmp_seq=2 ttl=64 time=0.556 ms
64 bytes from 192.168.99.100: icmp_seq=3 ttl=64 time=0.270 ms

备注:

适用于Windows用户的nginx主机文件位于C:\Windows\System32\Drivers\etc\hosts

  • If如果只想在一台对接机中支持多个域,则可以在其他容器前面创建一个内部带有
  • 的代理容器。
票数 16
EN

Stack Overflow用户

发布于 2018-02-19 00:25:54

最简单的方法是从VBox转发端口

设置->网络->适配器1->端口转发

然后添加名称,在主机中添加127.0.0.1(对于本地主机),然后进行正确的端口绑定并重新启动虚拟机。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35372399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档