Docker容器未在网络上公开

时间:2015-08-05 12:30:57

标签: docker boot2docker

我是码头工人的新手。我在Windows上运行它。我试图让一个名为“ghost”的容器(可从Docker Hub获得)在Windows 8.1机器上运行。当容器正确启动并且假设在http://localhost:2368公开URL时,当我输入此地址时没有任何反应。当从Hub中尝试暴露网址的其他容器时也会发生同样的情况。

我尝试从“docker ip”获取的IP地址访问容器的公开URL但它也失败了。我也尝试使用“--net =”bridge“”选项运行容器,但无济于事。我想我错过了一些非常基本的东西,但我不能为我的生活找出什么。有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:0)

您还没有提供完整的码头游戏......'命令你执行了,所以我假设您运行了Docker Hub上图像页面中指定的那个(下面再现)。

docker run --name some-ghost -p 8080:2368 -d ghost

该命令将Ghost在容器(2368)内的公开端口映射到boot2docker VM中的端口8080。您需要做的第一件事是运行 boot2docker ip 以找出您的boot2docker VM的IP地址。关于端口号,您有两个选择:

答案 1 :(得分:0)

在Windows上安装Docker时,意味着您很可能已安装boot2docker

boot2docker启动最小的Linux VM(基于VirtualBox),因为Docker需要运行Linux内核。 Docker守护程序在该VM 上启动,而不在localhost上启动。

您可以在命令行上键入boot2docker ip来确定VM的IP地址。如果您未配置其他内容或运行该VM的多个实例,则标准boot2docker IP地址为192.168.59.103

因此,当您执行docker run --name ghost -p 2368:2368 -d ghost时,2368处的端口192.168.59.103:2368已打开。这是您需要连接的地方。

有关详细信息,请阅读official boot2docker documentation