docker限制容器内存的方法

在服务器中使用 docker 时,如果不对 docker 的可调用内存进行限制,当 docker 内的程序出现不可预测的问题时,就很有可能因为内存爆炸导致服务器主机的瘫痪。而对 docker 进行限制后,可以将瘫痪范围控制在 docker 内。

因此,本文将介绍使用 docker 进行容器内存限制的方法。

容器内存限制

使用 docker 进行容器内存限制有两种方法,一种是在启动时对容器内存进行限制;另一种是容器启动后对容器内存进行限制。

(1)启动时进行限制

在启动时,通过命令

bash 复制代码
docker run ... -m 40G ...

中的 -m 40G 部分限制开启容器的可调用内存。此处限制容器可调用内存上限为 40 G。

(2)启动后进行限制

已经启动一个容器后,可以使用

bash 复制代码
docker update -m 40G {container_id/container_name}

开启容器的内存限制。其中,-m 40G 部分限制了可调用内存上限为 40 G,后面 {container_id/container_name} 表示容器 ID 或者容器名。

限制情况查看

完成限制后,可以在容器内或主机内查看限制情况。

(1)在主机内查看

在主机内,只需要通过命令

bash 复制代码
docker stats {container_id/container_name}

即可查看对容器的限制情况,如下图所示。

(2) 在容器内查看

在容器内,通过命令

bash 复制代码
cat /sys/fs/cgroup/memory/memory.limit_in_bytes 

即可查看容器的内存限制,如下图所示。单位为 Byte。

相关推荐
a41324473 分钟前
ubuntu25安装deepseek32b量化版
linux·运维·服务器·ubuntu
m0_612591974 分钟前
大型企业服务器托管选型指南:尚航科技的综合优势与适用场景分析
运维·服务器·科技
skywalk81634 分钟前
JWT_SECRET 是 JSON Web Token (JWT) 的密钥,用于服务器生成令牌和验证令牌
运维·服务器·json
HABuo5 分钟前
【Linux进程(三)】僵尸进程、孤儿进程&进程优先级剖析
linux·运维·服务器·c语言·c++·ubuntu·centos
fiveym5 分钟前
Linux存储核心问题全解析:wipe/LVM/RAID 5实操指南
linux·运维·服务器
星际棋手5 分钟前
【Devops三千问】需求排期不算 DevOps 环节?
运维·devops
slient_love6 分钟前
n8n部署安装(docker)、支持Code in Python (Native)节点
python·docker·n8n
qq_460621187 分钟前
linux df -Th指令卡死
linux·运维·chrome
以太浮标8 分钟前
华为eNSP模拟器综合实验之- 端口镜像(Port Mirroring)配置解析
运维·服务器·网络·华为
studytosky12 分钟前
Linux系统编程:深度解析 Linux 进程,切换调度、环境变量与虚拟内存
linux·运维·服务器·开发语言·网络·c++