【问题标题】:How do i make my docker container accessible to machines other than my host machines我如何让我的 docker 容器可以被我的主机以外的机器访问
【发布时间】:2019-02-07 15:39:41
【问题描述】:

我在我的 windows 10 机器上运行 docker,我安装了 windows 的 docker,当我运行带有暴露端口的 selenium hub 映像时它工作正常,我可以使用 localhost:4444 查看 selenium hub 控制台(4444 是暴露的端口) .现在我希望连接到同一网络的其他机器能够连接到我的 selenium hub 容器。

我怎样才能做到这一点。

我使用 -p 4444:4444 暴露了端口,但这看起来很适合在主机和 docker 容器之间工作。

集线器: 图片:硒/集线器:最新 端口: - “4444:4444”

【问题讨论】:

  • 默认情况下,当暴露一个端口时,它可以被公开访问。所以任何其他主机,无论它在哪里,都可以访问该端口,除非你将它放在防火墙后面

标签: docker docker-networking docker-for-windows linux-containers


【解决方案1】:

您已经完成了所需的一切,正如 cmets 中的 @mostafa 所述。 当您公开端口时,实际上是将内部 docker 网络端口映射到主机的端口,从而使您的服务可从主机获得。

您唯一需要关心的是主机接口,服务绑定到该接口。默认情况下,当您编写 -p 123:123 docker 映射到 0.0.0.0 时,这意味着服务在主机连接的所有网络上都可用。

您可以在-p <interface>:123:456 形式中明确指定此端口,以使此端口仅在指定网络中可见。

【讨论】:

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