Junior — Middle
Ako Docker spravuje a obmedzuje využívanie zdrojov ako CPU a pamäť pre kontajnery?
sobes.tech AI
Odpoveď od AI
Docker spravuje a obmedzuje zdroje kontajnerov pomocou schopností jadra Linux, ako sú cgroups a namespaces.
-
CPU: je možné obmedziť počet dostupných procesorových jadier alebo podiel CPU, ktorý môže kontajner používať, pomocou vlajok
--cpus,--cpu-shares,--cpu-quotaa--cpu-periodpri spustení kontajnera. -
Pamäť: obmedzenie pamäte sa nastavuje pomocou vlajok
--memory(maximálne množstvo pamäte) a--memory-swap(množstvo swap pamäte).
Príklad spustenia kontajnera s obmedzením zdrojov:
docker run --cpus="1.5" --memory="512m" nginx
V tomto príklade môže kontajner využívať maximálne 1.5 CPU a 512 MB RAM.
Týmto spôsobom Docker prostredníctvom cgroups kontroluje a izoluje zdroje, aby kontajnery neprekročili stanovené limity a nezasahovali do práce iných služieb.