Docker, konteynerler için CPU ve bellek gibi kaynakların kullanımını nasıl yönetir ve sınırlar?
sobes.tech yapay zeka
AI'dan gelen yanıt
Docker, Linux çekirdeğinin özellikleri olan cgroups ve namespace'ler gibi imkanları kullanarak konteynerlerin kaynaklarını yönetir ve sınırlar.
-
CPU: Bir konteynerin kullanabileceği işlemci çekirdeği sayısını veya CPU payını
--cpus,--cpu-shares,--cpu-quotave--cpu-periodbayraklarıyla konteyner başlatırken sınırlandırmak mümkündür. -
Bellek: Bellek sınırı
--memory(maksimum bellek miktarı) ve--memory-swap(swap bellek miktarı) bayraklarıyla belirlenir.
Kaynak sınırlandırmasıyla konteyner başlatma örneği:
docker run --cpus="1.5" --memory="512m" nginx
Bu örnekte, konteyner en fazla 1.5 CPU ve 512 MB RAM kullanabilir.
Bu şekilde, Docker cgroups aracılığıyla kaynakları kontrol eder ve izole eder, böylece konteynerler belirlenen sınırları aşmaz ve diğer servislerin çalışmasını engellemez.