Sobes.tech
Junior — Middle

Hogyan kezeli és korlátozza a Docker a CPU és memória erőforrások használatát a konténerek számára?

sobes.tech MI

Válasz az MI-től

A Docker a Linux kernel képességeit, például a cgroups és namespace-ek segítségével kezeli és korlátozza a konténerek erőforrásait.

  • CPU: lehetőség van a rendelkezésre álló processzor magok számának vagy a CPU részesedésének korlátozására a --cpus, --cpu-shares, --cpu-quota és --cpu-period zászlók segítségével a konténer indításakor.

  • Memória: a memória korlátozása a --memory (maximális memória mennyiség) és a --memory-swap (swap memória mennyiség) zászlókkal történik.

Példa erőforrás-korlátozással indított konténerre:

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

Ebben a példában a konténer legfeljebb 1.5 CPU-t és 512 MB RAM-ot használhat.

Így a Docker a cgroups segítségével ellenőrzi és izolálja az erőforrásokat, hogy a konténerek ne lépjék túl a beállított határokat, és ne zavarják más szolgáltatások működését.