gpt4 book ai didi

Mac 上的 Docker : Can't view ports

转载 作者:行者123 更新时间:2023-12-02 06:36:02 25 4
gpt4 key购买 nike

我正在 Yosemite 上运行 boot2docker。我可以轻松创建容器并在 boot2docker 中使用它们。我还可以通过 http 成功连接到 boot2docker 虚拟机中运行的 docker 守护进程。但是,当我使用 Revel 创建容器并启动 Revel 时,我无法从浏览器连接到 Revel 的端口 9000。

我正在遵循这种方法:http://www.medding.me/blog/2014/09/06/setting-up-a-docker-environment-for-golang-development-part-1/

这是正在运行的 Revel 服务器:

INFO  2015/05/07 20:19:00 revel.go:329: Loaded module static
INFO 2015/05/07 20:19:00 revel.go:329: Loaded module testrunner
INFO 2015/05/07 20:19:00 revel.go:206: Initialized Revel v0.12.0 (2015-03-25) for >= go1.3
INFO 2015/05/07 20:19:00 run.go:57: Running revel3 (alexed1/revel3) in dev mode
INFO 2015/05/07 20:19:00 harness.go:165: Listening on :9000

当我使用浏览器连接到 192.168.59.103:9000 时,我收到 ERR_CONNECTION_REFUSED

我尝试了几种不同的方法:

  1. dockerfile 中有 EXPOSE(9000);
  2. VirtualBox 客户端已按以下方式配置: http://screencast.com/t/KiRdimWVnwqS按照http://odewahn.github.io/docker-jumpstart/boot2docker.html的方向。我尝试使用 localhost 和 127.0.0.1 作为主机值。

如您所见,正在运行的容器上没有显示端口信息:

最佳答案

EXPOSE 用于向主机“公开”端口,它用于互连容器,请参阅 docs .

正如 jm_____ 中提到的,您必须将容器的端口转发到您的 boot2docker 主机:

docker run -p 40001:9000 the/image/name

然后通过以下方式访问它:

open http://192.168.59.103:40001

或者通过使用 docker ps 查找端口,就像您已经尝试过的那样。

PS:Dockerfile 中没有 PORT,但您可以在 docker-compose.yml 文件中指定它。

关于Mac 上的 Docker : Can't view ports,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30113273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com