docker可以根据需要在容器之间共享内存和CPU吗?

ska*_*bes 2 memory virtualization docker docker-compose

如果我运行多个具有突发内存和CPU利用率的docker容器,他们是否能够使用主机的全部容量?或者它们是否仅限于各个容器定义的CPU和内存限制?

例如:

如果我跑3个容器爆裂到1GB内存,每天一次,在不相交的时间.

同样地,如果那些相同的容器反而是CPU重,并且在不相交的时间每天突破到1CPU单元.

我可以在只有1.1GB内存或1.1 CPU单元的盒子上运行这3个容器吗?

xva*_*van 5

Docker容器不是VM,它们在主机操作系统内核上运行,所以没有管理程序魔术.

从内核的角度来看,在容器内运行的进程与主机进程没有太大的不同.他们只是高度孤立.

内存和cpu调度将由"主机"处理.您在docker设置上设置的是CPU份额,以便为某些容器提供优先级和边界.

所以,如果在处理峰值之后正确释放使用的内存,那么具有休眠进程的容器将不会消耗太多的CPU /内存,否则,该内存将被换出,而不会对性能产生太大影响.

实例化docker容器只会占用内存资源.只要没有进程正在运行,您将看到它的CPU使用率为零.