我在网上搜索找不到相关信息docker run debian based container on centos efficiency
。我发现跨发行版容器化通常可以正常工作,例如这里https://stackoverflow.com/questions/23945109/docker 中不同内核的编译代码会受到什么影响但效率上却没有太大提高。
我想知道运行debian
基于 Docker 容器的额外开销是多少(如果有的话) centos
,反之亦然?
答案1
在资源效率(CPU,RAM)方面,容器的“发行版”与主机的不同并不会对效率产生任何影响,因为您实际上并没有在容器内运行完整的发行版。
使用不同发行版的容器时唯一可能变得效率低下的方面是,您可能会在主机上使用更多的磁盘空间,因为它必须存储更多种类的层,其中一些可能仅由单个图像使用。
理想情况下,每个容器只运行一个进程,因此容器的发行版更多地涉及围绕该进程的环境(工具、路径、命令名称等)。
许多 Docker 镜像都具有几种“风格”(通过标签区分)。一种通常基于 CentOS、Debian 或 Ubuntu,另一种通常基于 Alpine。
Nginx例如存在以下标签(以及其他标签):
1.17.6
,,,,,mainline
1
1.17
latest
1.17.6-perl
,,,,,mainline-perl
1-perl
1.17-perl
perl
1.17.6-alpine
,,,,,mainline-alpine
1-alpine
1.17-alpine
alpine
1.17.6-alpine-perl
,,,,,mainline-alpine-perl
1-alpine-perl
1.17-alpine-perl
alpine-perl
1.17.6
、和标记映像1.17.6-alpine
将包含完全相同的 Nginx 二进制文件和配置,但容器可用的工具有所不同。如果您在两者上加载相同的配置文件,它们将在应用相同工作负载的情况下消耗相同数量的 CPU/RAM。