Junior — Middle
Kako Docker upravlja i ograničava korišćenje resursa kao što su CPU i memorija za kontejnere?
sobes.tech АИ
Одговор од АИ
Docker upravlja i ograničava resurse kontejnera koristeći mogućnosti Linux jezgra, kao što su cgroups i namespaces.
-
CPU: može se ograničiti broj dostupnih procesorskih jezgara ili udeo CPU-a koji kontejner može koristiti, pomoću zastavica
--cpus,--cpu-shares,--cpu-quotai--cpu-periodprilikom pokretanja kontejnera. -
Memorija: ograničenje memorije se postavlja zastavicama
--memory(maksimalna količina memorije) i--memory-swap(količina swap memorije).
Primer pokretanja kontejnera sa ograničenjem resursa:
docker run --cpus="1.5" --memory="512m" nginx
U ovom primeru, kontejner može koristiti najviše 1.5 CPU i 512 MB RAM-a.
Na ovaj način, Docker putem cgroups kontroliše i izoluje resurse, tako da kontejneri ne pređu zadate granice i ne ometaju rad drugih servisa.