Comment Docker gère-t-il et limite-t-il l'utilisation des ressources telles que le CPU et la mémoire pour les conteneurs?
sobes.tech IA
Réponse de l'IA
Docker gère et limite les ressources des conteneurs en utilisant les capacités du noyau Linux, telles que cgroups et namespaces.
-
CPU : il est possible de limiter le nombre de cœurs de processeur disponibles ou la part de CPU qu’un conteneur peut utiliser, en utilisant les options
--cpus,--cpu-shares,--cpu-quotaet--cpu-periodlors du lancement du conteneur. -
Mémoire : la limite de mémoire est définie avec les options
--memory(quantité maximale de mémoire) et--memory-swap(quantité de swap mémoire).
Exemple de lancement d’un conteneur avec limitation des ressources :
docker run --cpus="1.5" --memory="512m" nginx
Dans cet exemple, le conteneur pourra utiliser au maximum 1.5 CPU et 512 Mo de mémoire RAM.
Ainsi, Docker, via cgroups, contrôle et isole les ressources pour que les conteneurs ne dépassent pas les limites fixées et n’interfèrent pas avec le fonctionnement des autres services.