Melimit memory dan CPU di docker pada beberapa kasus perlu dilakukan. Karena selain menjaga server host tetap stabil, server host dapat terhindar dari hung atau freeze yang mengharuskan server direboot secara paksa dan dapat mengganggu container lain yang ada di server host tersebut.
Docker CLI #
Memory
Limit memory 512M
docker run -dit --name web1 -m 512m nginxdemos/hello
Limit soft memory
docker run -dit --name web1 -m 512m --memory-reservation 256m nginxdemos/hello
CPU
Limit CPU
docker run -dit --name web1 --cpus=2 nginxdemos/hello
Docker compose #
Limit Memory dan CPU dengan Docker compose
version: "3.9"
services:
site:
image: nginxdemos/hello
deploy:
resources:
limits:
cpus: "0.50"
memory: "64M"
reservations:
cpus: "0.25"
memory: "32M"