Docker主机网络是否破坏了应用程序的可移植性



我正在容器化一个绑定到网络的应用程序。我想用Docker主机网络驱动程序部署我的容器,因为它是最能最大限度地减少延迟的驱动程序选项。

现在让我们假设我的容器是基于ubuntu:最新的,我的主机操作系统是CentOS。我们还可以说,我的应用程序对Ubuntu有一些与网络相关的依赖。我的申请会像预期的那样成功吗?

我最终要研究的是,在使用主机驱动程序时,主机和容器之间在网络方面是否存在任何隔离,或者在网络依赖性方面,你是否基本上失去了任何可移植性?

如果指定--net host,则容器和主机网络之间没有隔离。另一方面,如果你只是在做简单的TCP/UDP事情,那么它在Unices之间是非常可移植的,我不会特别担心主机和容器分布不匹配。

(如果你开始说"ioctl"或"syscall",或者直接使用内核头来做任何事情,那么就值得担心;如果你依赖于扰乱iptables,它可能会变得很奇怪。(

最新更新