【问题标题】:firebase serve in docker container not visible to host osdocker容器中的firebase服务对主机操作系统不可见
【发布时间】:2017-03-13 12:53:04
【问题描述】:

在 docker 容器中运行,端口 9005 可用于主机操作系统以及何时运行

firebase 服务 -p 9005

然后尝试从主机操作系统(windows)访问它

使用http://localhost:9005 我得到一个空响应

【问题讨论】:

    标签: firebase docker firebase-tools


    【解决方案1】:

    要强制 firebase 服务可见,您必须指定它以强制它绑定到地址 0.0.0.0 否则绑定默认为 localhost

    所以你需要运行

    firebase 服务 -p 9005 -o 0.0.0.0

    确保使用 docker 命令行选项 -p 公开和发布 9005

    【讨论】:

      【解决方案2】:

      对于您的主机是本地主机,例如127.0.0.1,对于 docker 容器也是 localhost,也可能是 127.0.0.1。 但这些不一样,这是两个不同的东西!

      您必须配置一个在 docker 容器中运行的进程以使用所有接口,这称为 0.0.0.0 这不是 localhost。

      firebase serve -p 9005 -o 0.0.0.0
      

      然后你必须公开端口,在上面的例子中9005。见https://docs.docker.com/engine/reference/commandline/run/#publish-or-expose-port--p---expose

      docker run --expose 9005 $CONTAINER $PARAMS
      

      或在 Dockerfile 中使用类似的内容:

      EXPOSE 9005/tcp
      EXPOSE 9005/udp 
      

      请看这里:https://docs.docker.com/engine/reference/builder/#expose

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-11-22
        • 1970-01-01
        • 1970-01-01
        • 2020-09-11
        • 1970-01-01
        • 2017-08-30
        • 2015-03-10
        相关资源
        最近更新 更多