【问题标题】:Docker container curl to webDocker 容器 curl 到 web
【发布时间】:2016-12-19 13:59:47
【问题描述】:

我是 Docker 世界的新手,我有一个问题。首先我有一个 Google Compute Engine 实例在端口 8080 和 4444 上监听,我可以从我的主机浏览并看到 html 代码。

现在我有一个带有 docker 的 Google Container Engine,当我进入 docker 容器并运行 curl 命令时,我有不同的行为。

当我跑步时:

curl ipaddr:8080

一切正常,我可以在命令行中看到 html 代码。

但是当我跑步时:

curl ipaddr:4444

花了这么多时间,终于超时了。

这仅在 docker 容器中。如果我在其他机器上尝试,8080 和 4444 都可以正常工作。

对不起,如果我解释得不好,请问你想要什么!

谢谢!

【问题讨论】:

  • 您在启动 docker 容器时是否同时打开了 80804444 端口?例如。 docker run -p 4444:4444 -p 8080:8080 -d some-image?
  • @ronkot 是的,我现在这样做了,我也遇到了同样的问题。
  • @ronkot docker run -p 8080:8080 -p 4444:4444 -t -i eu.gcr.io/projectid/imagename:latest /bin/bash
  • 也许你必须在 GCE 实例上打开 4444 端口:stackoverflow.com/questions/21065922/…
  • @ronkot GCE 实例已打开端口 4444。 Y 可以从我的智能手机浏览或从其他 linux 运行 curl,我得到 html 代码。

标签: curl docker google-compute-engine docker-machine google-kubernetes-engine


【解决方案1】:

已解决:

对不起所有花时间回答这个问题的人。

现在我对 Google Container Engine 和 Docker 有了更多的了解。

我从我的项目的 Google Cloud Shell 运行 docker 容器,而不是从 GCE 集群实例... Google Cloud Shell 传出连接只能连接到以下 TCP 端口:20、21、22、80、443, 2375、2376、3306、8080、9600 和 50051。

以下是 Google Cloud Shell 限制:https://cloud.google.com/shell/docs/limitations

谢谢大家!

【讨论】:

    猜你喜欢
    • 2017-07-12
    • 1970-01-01
    • 2018-10-13
    • 2018-03-18
    • 2016-07-14
    • 1970-01-01
    • 2018-08-30
    • 2020-02-08
    相关资源
    最近更新 更多