3.11-容器的资源限制

这一小节我们来看一下如何限制容器的资源,比如CPU和内存。

我们先来看一下对内存的限制。

--memory和--memory-swap这两个参数,如果我们只限定了--memory,没有限定--memory-swap,那么--memory-swap的大小就会和--memory大小一样。

docker run --memory=200M flask-hello-docker --vm 1

--vm 1表示启动1个进程。

docker run --memory=200M flask-hello-docker --vm 1 --vm-bytes 500M

这里会看到报错提示内存不够,container启动失败。--vm-bytes不指定的时候默认是256M,--memory指定了200M,--memory-swap不指定的话也和--memory一致,也是200M。加起来就是400M。--vm 1 --vm-bytes 500M的意思是启动一个进程,进程大小是500M,大于400M,所以启动报错。

接下来看一下怎么限制CPU。介绍一个参数--cpu-shares

这个--cpu-shares设置的是相对CPU的权重。什么意思呢?假如我们有2个容器,我一个容器的--cpu-shares设置成10,另一个容器的--cpu-shares设置成5,这样的话会有一个什么效果呢?假如说我们这两个容器启动后把虚拟机的内存占满了,这两个容器的CPU占比加起来是100%,同时,第一个容器的CPU占比是第二个容器CPU占比的2倍。

docker run ----cpu-shares=10 --name=flask-hello-docker -d -p 20000:20000 flask-hello-docker --cpu 1

--cpu 1参数表示container启动的时候占用的是CPU 1。

相关推荐
THMAIL2 小时前
mac M芯片运行docker-desktop异常问题
macos·docker·容器
两点王爷3 小时前
IDEA中springboot项目中连接docker
spring boot·docker·intellij-idea
家庭云计算专家4 小时前
还没用过智能文档编辑器吗?带有AI插件的ONLYOFFICE介绍
服务器·人工智能·docker·容器·编辑器
孤的心了不冷6 小时前
【Docker】CentOS 8.2 安装Docker教程
linux·运维·docker·容器·eureka·centos
头疼的程序员7 小时前
docker学习与使用(概念、镜像、容器、数据卷、dockerfile等)
学习·docker·容器
IT小郭.7 小时前
使用 Docker Desktop 安装 Neo4j 知识图谱
windows·python·sql·docker·知识图谱·database·neo4j
淡水猫.7 小时前
hbit资产收集工具Docker(笔记版)
运维·docker·容器
旧故新长16 小时前
访问 Docker 官方镜像源(包括代理)全部被“重置连接”或超时
运维·docker·容器
white.tie16 小时前
Docker部署单节点Elasticsearch
elasticsearch·docker·jenkins
haven-85221 小时前
win11安装Joplin Server私有化部署(docker)
运维·docker·容器