【问题标题】:Connect a docker's container port that is running inside an Ubuntu VM, with the VM's host machine network [closed]将在 Ubuntu VM 内运行的 docker 容器端口与 VM 的主机网络连接 [关闭]
【发布时间】:2020-08-05 19:40:01
【问题描述】:

我有一个在 Windows PC 上托管的 Ubuntu-18.04 映像 (VMWare Player) 中运行的 Docker。 Docker 有一个 Gitlab 容器,我可以从我的虚拟机通过 localhost:4000 访问它。问题是如何从我的 Windows PC 访问相同的 Gitlab 实例?据我了解,我需要连接两层。第一个是带有 VM 主机的 Docker,第二个是带有 Windows 主机的 VM 主机。我尝试在 Windows 主机和虚拟机之间创建桥接连接,但无法正常工作。如果可能,请提供详细的答案和步骤。

【问题讨论】:

    标签: docker ubuntu gitlab ubuntu-18.04 vmware-player


    【解决方案1】:

    感谢PanosMR,问题解决了。

    我的解决方案是将 VM 网络设置为仅限主机。然后为虚拟机分配一个子网 IP,如 192.168.42.0,掩码如 255.255.255.0

    之后我去查看我的虚拟机分配到了哪个 IP。 IP 是192.128.42.128。然后在我的 Ubuntu VM 内的 docker 上,我将 Gitlab 容器 --publish IP 设置为同一个 VM 的 IP 和端口。

    例如--publish 192.168.42.128:4000:80 和繁荣!当 Gitlab 容器启动时,我可以通过我的 Windows PC 访问该 IP。

    这是我见过的最简单的解决方案,也是唯一合法的解决方案。

    【讨论】:

      【解决方案2】:

      如果我没记错的话,Virtualbox 有一个设置屏幕来配置端口转发。用谷歌搜索一下。

      【讨论】:

      • 抱歉,我运行的不是 VB,而是 VMWare Player。我确实尝试了端口转发,但我仍然无法访问 VMWare 上的 gitlab。
      • 您检查过 Windows 防火墙吗?
      • 我的防火墙因此而关闭。只是为了检查它是否有问题。我创建的规则还允许此端口“从”和“到”以防万一。
      • 您可能需要尝试更改 vm 网络配置:尝试 NAT 或桥接接口。祝你好运。 vm ip 也不是 127.0.0.1。检查ip。
      • 我知道这一切。这就是为什么我发布一个问题并询问详细步骤的原因。谢谢。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-29
      • 2014-08-04
      • 2015-02-20
      • 1970-01-01
      • 2020-10-03
      相关资源
      最近更新 更多