Sobes.tech
Junior — Middle

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-quota et --cpu-period lors 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.