【问题标题】:Sharing VirtualBox VM and Docker Container network共享 VirtualBox VM 和 Docker 容器网络
【发布时间】:2020-11-16 09:40:45
【问题描述】:

我有一个带有 VirtualBox 的无头服务器。它运行多个虚拟机。其中之一是网络代理。它将外部访问重定向到子域功能中的正确 VM。这些虚拟机通过内部网络 (intnet) 在它们之间进行通信。

我想在这个配置中添加一些 docker 容器。我怎样才能成功地创建一个在我的 docker 容器和这个代理 VM 之间共享的网络?

我尝试使用 docker docker network create my_net 创建一个桥接网络,然后在“桥接”模式下将 VM 连接到另一个网卡。
使用此配置 ping 有效,但 不是实际连接。将网页显示到浏览器中并非不可能。

我在这里缺少一些配置吗?另外,将一个 VM 连接到 docker 网络是一种好习惯吗?

【问题讨论】:

    标签: docker networking virtualbox


    【解决方案1】:

    在其中一台虚拟机上运行容器。在这里使用完全正常的 Docker 设置:为容器间通信创建一个网络,但不要对其进行配置,并且完全忽略容器专用网络详细信息和 IP 地址。

    当您使用 docker run -p 选项时,这将在其 VM 的网络接口上发布容器的端口。从那时起,其他 VM 可以使用该 VM 的 IP 地址调用已发布的端口,就像它是在 VM 上运行的非容器进程一样。相反,容器应该能够在没有特殊设置的情况下对其他 VM 进行出站调用。

    【讨论】:

    • 这正是我不想做的。这个想法是让容器直接在主机上运行,​​让 docker 自己管理 ram 并避免 VM ram 限制。
    • 如果虚拟机有网络路由可以联系到主机,你可以在虚拟机外运行 Docker 做同样的事情;使用主机的 IP 地址访问docker run -p 发布的端口。
    • 服务器有多个使用多个端口的应用程序,维护所有这些端口的重定向将是一场噩梦。
    猜你喜欢
    • 2020-12-06
    • 2020-11-11
    • 1970-01-01
    • 2015-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-09
    • 1970-01-01
    相关资源
    最近更新 更多