Docker + Rancher 上下文中的主机是什么?

What's the host in Docker + Rancher context?

所以我看到文档中多次提到主机。您还可以在 yml 文件中添加 networking_mode=host

所以我假设主机是 VM (Docker) 运行 所在的机器?

因此,如果我将网络模式设置为主机,端口映射等将在我的本地计算机上处​​理。我可以在 yml 中的什么地方 3001:3000 将端口 3001 映射到容器端口 3000。使用网络模式主机,映射将在我的本地计算机上处​​理。

现在,当我们在 rancher 上托管容器时。然后我们设置 networking_mode=host。在这种情况下,什么是主机?是 VM 还是 ec2 还是 运行ning 我的牧场主?或者 VM/ec2 运行 我的主机堆栈?

我无法从文档中掌握它。

容器在单个服务器上运行,a.k.a 主机,运行 Docker。

主机可以是裸机服务器、笔记本电脑上的虚拟机 运行 或 EC2 实例。

Rancher 本身是主机上的一个容器运行。现在,当您构建集群时,您可以添加作为 运行 Rancher 容器的主机,或者您可以选择保持隔离并开始添加完全不同的主机。

如果您选择 networking_mode=host,容器将使用主机网络堆栈,如果您不选择,容器将获得它自己的网络堆栈。当 运行 处于主机网络模式时,容器内的应用程序 运行 直接绑定到主机网络接口,因此不会发生端口映射。

如果您对更多细节感兴趣,我在本次演讲的前半部分讨论了很多关于网络的内容:https://www.youtube.com/watch?v=GXq3FS8M_kw。如果您有更多问题,请告诉我。