使用boot2docker

时间:2015-04-22 20:56:30

标签: docker boot2docker

到目前为止,我有:

  1. 在WIN7上安装了boot2docker 1.6.0
  2. 使用ubuntu创建了一个容器:14.01 base image
  3. 安装了一个应用程序并提交了它,现在我有一个新的图像" demotest_core"
  4. 我遇到的问题是当我使用此命令启动容器时

    docker run -it --name demotest --rm -p 127.0.0.1:15000:1500 -v /c/Users/b101/shared:/mnt/shared ubuntu/demotest_core bin/bash
    

    容器启动,之后我cd到我的应用程序的目录并启动应用程序(它是一个在端口1500上运行的Web应用程序),应用程序在容器上成功启动,我可以看到它我在netstat时的聆听模式。我想在我的主机WIN7系统上访问此应用程序,但是当我尝试http://127.0.0.1:15000时,我收到连接拒绝错误。

    使用另一个终端我可以清楚地看到端口映射已到位,但我无法在主机上访问它

    C:\Users\b101>docker port demotest
    1500/tcp -> 127.0.0.1:15000
    

    我也尝试过这个命令,认为首先我需要公开PORT然后对它进行MAP但它没有工作

    docker run -it --name demotest --expose 1500 --rm -p 127.0.0.1:15000:1500 -v /c/Users/b101/shared:/mnt/shared ubuntu/demotest_core bin/bash
    

1 个答案:

答案 0 :(得分:1)

如果您正在使用docker-machine,那么该端口将在VM中公开,而不是您本地的Win7计算机。

-p 127.0.0.1:15000:1500更改为15000:1500,然后尝试在15000处提供的IP地址访问端口docker-machine ip default

您不能在端口映射中使用127.0.0.1,因为它只会绑定到无法从VM外部访问的本地接口。