Macos Can';t连接到OSX上的Docker容器

Macos Can';t连接到OSX上的Docker容器,macos,docker,Macos,Docker,我是Docker的新手,似乎无法连接到任何容器 我安装了。现在我正在努力工作。我遵循Docker Quickstart终端内部的步骤。说明书上说: 部署后,脚本将输出URL以连接凭据信息 造船厂安装人员以以下内容结束: Shipyard available at http://10.0.2.15:8080 Username: [elided] Password: [elided] 然而,我去了http://10.0.2.15:8080在我的浏览器上,但它没有连接 在另一个Docker Quic

我是Docker的新手,似乎无法连接到任何容器

我安装了。现在我正在努力工作。我遵循Docker Quickstart终端内部的步骤。说明书上说:

部署后,脚本将输出URL以连接凭据信息

造船厂安装人员以以下内容结束:

Shipyard available at http://10.0.2.15:8080
Username: [elided] Password: [elided]
然而,我去了
http://10.0.2.15:8080
在我的浏览器上,但它没有连接

在另一个Docker Quickstart终端中,我做了一个
Docker ps
来查看容器是什么,并获取其IP地址,我得到:

$ docker inspect a4755 | grep IPAddress
            "SecondaryIPAddresses": null,
            "IPAddress": "172.17.0.8",
                    "IPAddress": "172.17.0.8",
我不知道为什么IP不同,但我尝试连接到
http://172.17.0.8:8080
这也不起作用<代码>http://localhost:8080也失败了

当我试着运行时也发生了这种情况——一切都启动了,但我无法连接到机器


给出了什么?

如果您通读Docker的,您将看到在OSX上,Docker容器不会在主机本身上运行:

在Linux上的Docker安装中,物理机器既是本地主机又是Docker主机。在网络中,localhost是指您的计算机。Docker主机是运行容器的计算机

在典型的Linux安装中,Docker客户端、Docker守护进程和任何容器都直接在本地主机上运行。这意味着您可以使用标准的localhost寻址(如localhost:8000或0.0.0.0:8376)来寻址Docker容器上的端口

[……]

在OSX安装中,docker守护进程在一个名为default的Linux虚拟机中运行。默认情况下是一个轻量级Linux虚拟机,专门用于在Mac OS X上运行Docker守护程序。虚拟机完全从RAM运行,下载量很小,约为24MB,启动时间约为5s

在OSX中,Docker主机地址是Linux虚拟机的地址。当您使用docker机器启动VM时,会为其分配一个IP地址。启动容器时,容器上的端口映射到VM上的端口。要在实践中看到这一点,请完成本页上的练习

事实上,打开一个新的Docker Quickstart终端,我看到:

docker is configured to use the default machine with IP 192.168.99.100

和,打开
http://192.168.99.100:8080
带我去造船厂。成功

您可以尝试执行以下命令:

docker-machine ip default
它将返回以下内容:

192.168.99.100
要获取端口号,请执行以下操作:

docker ps
输出示例(向右滚动以查看端口映射):

要验证它是否工作,请执行以下操作:


curl 192.168.99.100:8080

它仍然有效吗?在文档中找不到上面的文本。@Claudiu Docker for Mac如何配置它以使我的web浏览器知道如何连接到vm?
Docker机器“默认”不存在。使用“docker machine ls”列出机器。使用“docker machine create”添加一个新的
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
113346425f20        springio/spring1    "sh -c 'java $JAVA_OP"   34 minutes ago      Up 34 minutes       0.0.0.0:8080->8080/tcp   pensive_kirch