这篇文章给大家介绍docker如何分配资源给容器,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
docker如何分配资源给容器?默认情况下,docker容器的资源分配是没有限制的,宿主机有多少资源,它就可以用多少资源。而docker可以限制内存、CPU、IO的资源使用。
docker可以在docker run或者docker build 的时候,设置这些选项,设置的选线和规则如下:
内存
-m 或 –memory :
–memory-swap * :此命令依赖于-m
CPU
CPU为按比例分配
–cpus=<value> 使用value核cpu,比如cpu为双核,可以设置–cpus=”1.5″,表示有1.5核cpu分配给该容器
–cup-shares:当有多个docker的时候,所有docker按比例分配cpu资源,如果其他docker空闲的话,仅有一个docker繁忙,则他可以用完所有cpu
–cpuset-cpus:指定docker运行在哪个cpu上,比如,4核cpu编号为[0-3]
默认设置下,所有容器可以平等地使用主机 CPU 资源并且没有限制。docker 可以通过-c或–cpu-shares设置容器使用 CPU 的权重。如果不指定,默认值为 1024。
测试内存
docker run --name s1 -it --rm -m 256m lorel/docker-stress-ng stress --vm 2
使用以上命令启动一个最多使用256m内存的容器,虽然进入到容器查看总内存跟物理内存一致,但是使用docker stats s1可以看到最多只能使用256m内存
关于docker如何分配资源给容器就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。