Docker限制容器内存大小

53

想象一个场景:你在你的服务器上搭建了一个Docker应用,本以为无事发生,结果吃个晚饭回来一看,内存占用直接飙升100%,你肯定得把早上吃的都给吐出来。

如何解决这个棘手的问题?

没错,那就是去限制容器的最大内存使用量

创建时限制

先把容器想占有内存的想法扼杀在摇篮里。

这行代码意思是限制内存最大使用200m,swap 300m。

docker run -it -m 200M --memory-swap=300M

创建后限制

我的容器已经在跑了怎么办?用这个

docker container update  e51ed3776a0e --memory="300m" --memory-swap="400m"

通过这个来监测是否生效:

docker stats name