Docker 在一个吊舱中放置多个容器有什么好处?

Docker 在一个吊舱中放置多个容器有什么好处?,docker,openshift,openshift-enterprise,Docker,Openshift,Openshift Enterprise,在一个pod中使用多个容器与使用独立容器相比有什么好处?来自 Pod可以封装由多个紧密耦合且需要共享资源的共同定位容器组成的应用程序。这些位于同一位置的容器可能形成一个统一的服务单元——一个容器将共享卷中的文件提供给公众,而另一个“侧车”容器则刷新或更新这些文件。Pod将这些容器和存储资源打包为一个可管理的实体 如果在同一个pod中有多个容器,它们可以作为localhost相互通信,并可以共享装载的卷 如果每个容器都有多个吊舱,则可以在不重新启动另一个容器的情况下重新启动其中一个吊舱。假设它们由

在一个pod中使用多个容器与使用独立容器相比有什么好处?

来自

Pod可以封装由多个紧密耦合且需要共享资源的共同定位容器组成的应用程序。这些位于同一位置的容器可能形成一个统一的服务单元——一个容器将共享卷中的文件提供给公众,而另一个“侧车”容器则刷新或更新这些文件。Pod将这些容器和存储资源打包为一个可管理的实体


如果在同一个pod中有多个容器,它们可以作为
localhost
相互通信,并可以共享装载的卷

如果每个容器都有多个吊舱,则可以在不重新启动另一个容器的情况下重新启动其中一个吊舱。假设它们由部署控制,则可以添加其中一个的其他副本,而不必扩展另一个副本。如果其中一个的版本或某些其他特性发生更改,则不必重新启动另一个。您需要设置一个服务来从一个到另一个进行通信,而它们不能通过文件系统进行通信


我一直看到的一般方法是在部署中每个pod始终有一个容器,除非您有特定的理由需要额外的容器。通常,这是一种特殊用途的“侧车”,与凭证服务对话,或管理日志记录,或运行网络代理,或是pod主要功能的次要功能(而不是单独的服务)。

除了指出的要点,CPU和内存(在技术预览下)与POD关联,因此,如果POD中只有一个容器,则POD中的应用程序资源需求很容易理解和实现,如果POD中有多个容器,则当我们想要进行水平缩放时,我们可能会面临问题/挑战


其次,部署(蓝色/绿色、金丝雀色、A/B)也更符合单容器/吊舱的方法

是否可以在一个部署文件中包含多个容器?@AlexejMagura是的,您可以。在部署配置的.spec.template.spec.containers部分中,可以列出多个容器。