主机网络中的docker主机网络容器

时间:2021-02-25 11:22:59

标签: docker networking virtualization

我的任务是在父系统的网络上放置一个docker容器,并放置一个相邻的ip地址。粗略地说,用你自己的mac地址和你自己的ip地址制作第二个虚拟机。不幸的是,我已经尝试了一切......管道没有正确地将物理接口放入容器内,makvlan 无法访问互联网......我在 docker 的网络中尝试了主机模式,但它给了两个 IP 地址容器(父系统的一个地址,第二个物理接口的第二个地址。告诉我如何解决这个问题

1 个答案:

答案 0 :(得分:0)

您可以使用 docker run -p 选项在特定接口上发布端口(接受入站连接)。假设主机网络为192.168.1.0/24,主地址为192.168.1.111,第二地址为192.168.1.222;那么你可以

docker run -p 192.168.1.222:80:5000

和主机上的端口 80,仅在辅助接口上,将被转发到容器中的端口 5000。此 IP 地址的默认值为 0.0.0.0,使该端口可在所有接口上访问。

您需要在主机上配置辅助 IP 地址。在系统上安装 Docker 根本不会改变这个机制。

您不需要主机网络:它通常会禁用 Docker 网络,在本例中这意味着容器进程可以看到所有主机接口,因此需要将 进程 配置为绑定到正确的界面。相反,使用标准网络,您需要确保进程绑定到 0.0.0.0“所有接口”地址,这在 Docker 中是典型的。