Sobes.tech
Junior — Middle

¿Cómo gestiona y limita Docker el uso de recursos como CPU y memoria para los contenedores?

sobes.tech AI

Respuesta de la IA

Docker gestiona y limita los recursos de los contenedores mediante las capacidades del núcleo de Linux, como cgroups y namespaces.

  • CPU: se puede limitar la cantidad de núcleos de procesador disponibles o la proporción de CPU que puede usar un contenedor, usando las banderas --cpus, --cpu-shares, --cpu-quota y --cpu-period al iniciar el contenedor.

  • Memoria: la limitación de memoria se establece con las banderas --memory (cantidad máxima de memoria) y --memory-swap (cantidad de swap de memoria).

Ejemplo de inicio de un contenedor con limitación de recursos:

docker run --cpus="1.5" --memory="512m" nginx

En este ejemplo, el contenedor podrá usar un máximo de 1.5 CPU y 512 MB de memoria RAM.

De esta forma, Docker a través de cgroups controla y aísla los recursos para que los contenedores no excedan los límites establecidos y no interfieran con el funcionamiento de otros servicios.