docker查看容器教程(如何使用docker对容器资源进行限制)
类别:服务器 浏览量:1347
时间:2021-10-24 10:41:48 docker查看容器教程
如何使用docker对容器资源进行限制问题窥探在服务器当中,假设iis服务部署多个站点,那么只要其中一个站点出问题,假设是cpu100%,或者是内存爆满,那么这台服务器上的其他站点都会跟着挂掉。同样在使用容器时,单台主机上可能会跑几十个容器,容器虽然都相互隔离,但是用的却是与宿主机相同的内核,CPU、内存、磁盘等硬件资源。如果不对容器资源进行限制,容器之间就会相互影响。
解决办法Docker提供了限制内存,CPU或磁盘IO的方法, 可以对容器所占用的硬件资源大小以及多少进行限制,我们在使用docker create创建一个容器或者docker run运行一个容器的时候就可以来对此容器的硬件资源做限制。
内存限制Docker 提供的内存限制功能有以下几点:
1、容器能使用的内存和交换分区大小。
2、容器的核心内存大小。
3、容器虚拟内存的交换行为。
4、容器内存的软性限制。
5、是否杀死占用过多内存的容器。
6、容器被杀死的优先级
-m,--memory 内存限制,格式是数字加单位,单位可以为 b,k,m,g。最小为 4M --memory-swap 内存+交换分区大小总限制。格式同上。必须必-m设置的大 --memory-reservation 内存的软性限制。格式同上 --oom-kill-disable 是否阻止 OOM killer 杀死容器,默认没设置 --oom-score-adj 容器被 OOM killer 杀死的优先级,范围是[-1000, 1000],默认为 0 --memory-swappiness 用于设置容器的虚拟内存控制行为。值为 0~100 之间的整数 --kernel-memory 核心内存限制。格式同上,最小为 4M
用户内存限制就是对容器能使用的内存和交换分区的大小作出限制。
使用时要遵循两条直观的规则:
-m,--memory选项的参数最小为 4M。 --memory-swap不是交换分区,而是内存加交换分区的总大小,所以--memory-swap必须比-m,--memory大。
docker run命令和 CPU 限制相关的所有选项如下:
--cpuset-cpus="" 允许使用的 CPU 集,值可以为 0-3,0,1 -c,--cpu-shares=0 CPU 共享权值(相对权重) cpu-period=0 限制 CPU CFS 的周期,范围从 100ms~1s,即[1000, 1000000] --cpu-quota=0 限制 CPU CFS 配额,必须不小于1ms,即 >= 1000 --cpuset-mems="" 允许在上执行的内存节点(MEMs),只对 NUMA 系统有效
其中--cpuset-cpus用于设置容器可以使用的 vCPU 核。-c,--cpu-shares用于设置多个容器竞争 CPU 时,各个容器相对能分配到的 CPU 时间比例。--cpu-period和--cpu-quata用于绝对设置容器能使用 CPU 时间。
到此这篇关于如何使用docker对容器资源进行限制的文章就介绍到这了,更多相关docker容器资源限制内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
您可能感兴趣
- docker harbor 配置中央仓库(Docker Gitlab+Jenkins+Harbor构建持久化平台操作)
- docker阿里云服务器教程(Docker安装阿里云服务器和在虚拟机安装遇到的坑问题小结)
- docker 技术认证(docker获取Let's Encrypt永久免费SSL证书的方法)
- docker compose 与docker区别(windows安装Docker与docker-compose套装的详细教程)
- docker装redis(通过Docker部署Redis 6.x集群的方法)
- dockertomcat运行参数设置(Docker Tomcat为何看不到访问界面)
- docker安装nginx如何配置(docker部署nginx并且挂载文件夹和文件操作)
- dockervolume文件权限(docker volumes 文件映射方式)
- linux机器重启了docker容器还在不(Linux下docker 容器退出bash的两种实现方法)
- docker容器退出错误码的步骤(docker容器退出错误码的步骤)
- docker和tomcat建立连接(如何基于Dockerfile构建tomcat镜像)
- docker部署go项目(Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤)
- springboot怎么用docker(使用docker部署spring boot并接入skywalking的方法)
- docker容器的三大组件(docker容器下配置jupyter notebook的操作)
- docker-compose启动超时(docker compose idea CreateProcess error=2 系统找不到指定的文件的问题)
- docker查看运行容器参数(Docker容器时区调整操作)
- 融入小人物的喜怒哀乐,黄渤饰演的角色为什么让人观看时欲罢不能(融入小人物的喜怒哀乐)
- 《极限挑战》深访都市夜归人,夜间打工者体验,黄磊录完憔悴了(极限挑战深访都市夜归人)
- Google 推出了一个游戏生成器,让不会编程的你也能自己设计游戏(推出了一个游戏生成器)
- 二胎家庭老大爱闹情绪,用这招很有效(二胎家庭老大爱闹情绪)
- 一个30岁男人外遇失败的全过程(一个30岁男人外遇失败的全过程)
- 《无敌破坏王2》 不聊彩蛋,聊聊我从动画里看到的现实那些事儿(无敌破坏王2不聊彩蛋)
热门推荐
- 移动端touch事件
- frameset与iframe 的应用与区别
- mysql标签的用法(mysql 的indexof函数用法说明)
- es6新增语法以及用法(ES6 解构赋值的原理及运用)
- yii框架使用教程(Yii框架分页技术实例分析)
- dedecms中的有些功能如何修改(DedeCms参考手册、函数及文件大全)
- qt和js相互调用(QT与javascript交互数据的实现)
- react实现js控制样式(React + Threejs + Swiper 实现全景图效果的完整代码)
- php开发中用什么模板(PHP模版引擎原理、定义与用法实例)
- sysbenchmysql性能跑分(MySQL性能压力基准测试工具sysbench的使用简介)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9