【问题标题】:I have unable to access running tomcat running inside docker container我无法访问在 docker 容器内运行的正在运行的 tomcat
【发布时间】:2020-05-04 06:07:13
【问题描述】:

首先我跑

docker run -it --rm -p 8888:8080 tomcat:8.0

然后我可以看到我的 html 代码

curl localhost:8888

当我从浏览器访问时

<container-id>:8888

显示无法访问此站点 响应时间过长。

【问题讨论】:

  • 您能否分享有关 docker 设置的更多详细信息以及您采取的调试步骤?此外,如果您的容器在 linux virtualbox 之上运行,则无法通过 localhost 访问它。
  • 感谢 cmets,现在我可以访问防火墙相关的问题。我已经为端口 8888 添加了防火墙规则。它正在工作。

标签: docker google-cloud-functions debian tomcat8


【解决方案1】:

您无法使用container_id从浏览器访问容器应用程序,container_id 用于服务在同一网络中或相互链接时的服务间通信。

另外如果你想使用容器IP访问容器,

docker inspect <container id> | grep "IPAddress"

那么你不应该使用8888,你应该使用8080的容器端口

如果您想从主机访问,那么您可以使用8888 作为发布端口。

【讨论】:

  • 请注意,此docker inspect 路径 可以从同一物理主机进行调用,然后 当它是本机Linux 主机时;它不适用于 MacOS、Windows、Docker Toolbox 或其他主机。使用发布的端口通常更适合浏览器访问。
【解决方案2】:

您需要在浏览器中尝试localhost:8888

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-09
    • 2018-12-26
    • 2021-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多