我分別用兩種linux系統部署Docker0.8,都沒法限制容器的記憶體大小。具體情況如下:
用CentOS6.5【內核為3.10.5-3.el6.x86_64】做主機,新建容器,得到結果如下:
# docker run -i -t -d -m 512m centos /bin/bash
WARNING: WARNING: Your kernel does not support swap limit capabilities. Limitation discarded.
9229fe1bac59992337e909cbc5a11f3e0fa81553ad7b136bec95a62181a251fd
該容器新建成功,但不能限制記憶體大小。
Ubuntu 12.04【內核為3.8.0-38-generic】做主機,并且修正/etc/default/grub,更改$ GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"之后,新建容器,得到結果如下:
# sudo docker run -i -t -m 512m -d ubuntu /bin/bash
89d629ed37d63b67b49ed8c4c11cab653d61d5b85227bdd10c8a9a0a718c686e
看似未報錯,登陸該新建的容器里面查看記憶體【free命令】,發現并未限制。
大家使用的主機都是什么系統,有沒有這種情況?如何解決?盼回復,謝謝!
uj5u.com熱心網友回復:
container中的free命令,看的是Host上的記憶體。要查看container的記憶體限制用這個:
cat /cgroup/memory/lxc/{full_container_id}/memory.limit_in_bytes
/cgroup/下還可以查看其它資源的限制:
ll /cgroup/
總用量 0
drwxr-xr-x 3 root root 0 3月 17 13:33 blkio
drwxr-xr-x 3 root root 0 3月 17 13:33 cpu
drwxr-xr-x 3 root root 0 3月 17 13:33 cpuacct
drwxr-xr-x 3 root root 0 3月 17 13:33 cpuset
drwxr-xr-x 3 root root 0 3月 17 13:33 devices
drwxr-xr-x 3 root root 0 3月 17 13:33 freezer
drwxr-xr-x 3 root root 0 3月 17 13:33 memory
drwxr-xr-x 3 root root 0 3月 17 13:33 net_cls
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/105596.html
標籤:Docker
