我是码头工人的新手。我在Windows上运行它。我试图让一个名为“ghost”的容器(可从Docker Hub获得)在Windows 8.1机器上运行。当容器正确启动并且假设在http://localhost:2368公开URL时,当我输入此地址时没有任何反应。当从Hub中尝试暴露网址的其他容器时也会发生同样的情况。
我尝试从“docker ip”获取的IP地址访问容器的公开URL但它也失败了。我也尝试使用“--net =”bridge“”选项运行容器,但无济于事。我想我错过了一些非常基本的东西,但我不能为我的生活找出什么。有人能指出我正确的方向吗?
答案 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。