- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我让 Grunt 在 docker 容器中的 localhost:8080
上运行节点连接 (grunt-contrib-connect) Web 服务器。我用这个命令运行容器:$ docker run --rm -it -p 8080:8080 js1972/yeoman:v3
。
在我的容器中,我使用 grunt develop
运行 grunt connect 任务。
我在 Mac 上使用 boot2docker。 boot2docker ip
表示主机 ip 是 192.168.59.103 所以我应该使用 http://192.168.59.103:8080 访问连接服务器在我的浏览器中。
但是这不起作用,我只是收到 safari 无法连接到服务器的消息。 (请注意,当我使用像 docker 网站示例中那样的简单 python Web 服务器时,端口转发工作得很好。)
知道这里出了什么问题吗?同样的过程在 docker 之外工作得很好。我有一种感觉,这与在本地主机上运行 Connect 有关。我尝试了 --add-hosts 和 -p localhost:8080:8080 的各种组合,等等都无济于事......
如果有帮助,这是我的 docker 文件和 gruntfile: https://dl.dropboxusercontent.com/u/7546923/Dockerfile https://dl.dropboxusercontent.com/u/7546923/Gruntfile.js
Rgds,杰森。
最佳答案
将 localhost
更改为 0.0.0.0
。
目前容器只监听本地接口(interface)上的内部 连接。使用 0.0.0.0
将告诉它监听所有接口(interface),包括 Docker 主机连接到的接口(interface)。
关于docker - 如何在 docker 容器中运行 grunt-connect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28299980/
我是一名优秀的程序员,十分优秀!