docker-machine:无法从主机访问容器的Web服务器
我刚刚使用自制软件在Mac上使用Docker-
Toolbox安装了Docker:使用自制软件安装了Docker
在使用Rails创建并配置了容器之后,Postgres并启动了docker-compose,一切看起来都很好,但是我无法从主机访问Web服务器。
输出
$ docker-compose updummy_1 | I, [2016-03-30T14:55:53.130639 #6] INFO -- : listening on addr=0.0.0.0:8000 fd=10
当我输入谷歌浏览器的网址http://0.0.0.0:8000/我得到
This site can’t be reached0.0.0.0 refused to connect.
ERR_CONNECTION_REFUSED
所以我尝试了
$ docker-machine env dummy
具有以下输出:
export DOCKER_TLS_VERIFY="1"export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/choi/.docker/machine/machines/dummy"
export DOCKER_MACHINE_NAME="dummy"
当我尝试使用Chrome浏览器时,http://192.168.99.100:2376
我会下载一个空白文件。为什么会这样呢?我希望我的Rails应用程序具有默认的问候页面。
回答:
192.168.99.100
在这种情况下,是您的Docker主机的IP。您需要公开容器的端口,然后才能从外部连接到它。
我不熟悉Docker Compose,但是您发布的日志 表明 暴露了端口8000。因此,请尝试http://192.168.99.100:8000
。
(之所以http://192.168.99.100:2376
不起作用,是因为这是Docker守护程序本身的地址和端口,它不是基于HTTP的。至于0.0.0.0
:这是您的Web服务器在容器
内部 侦听的地址,它等同于所有外部连接。但是,如果没有任何端口暴露在外,那就没办法了!)
以上是 docker-machine:无法从主机访问容器的Web服务器 的全部内容, 来源链接: utcz.com/qa/416983.html