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。

相关推荐
zhangzeyuaaa17 小时前
从Windows到Linux:Shell脚本“无法执行:找不到需要的文件”问题深度解析与根治方案
linux·运维·windows
大卡片17 小时前
进程间通信
linux·运维·服务器
张小姐的猫17 小时前
【Linux】进程信号(上)—— 信号产生 | 保存信号
linux·运维·服务器
努力搬砖的咸鱼17 小时前
Label 与 Selector:Kubernetes 资源选择的核心机制
微服务·云原生·容器·架构·kubernetes
石小千17 小时前
部署Nextcloud与Onlyoffice(二)安装Onlyofiice
linux·运维
白毛大侠18 小时前
Docker vs 虚拟机 vs Go 用户态/内核态:这三组概念
运维·docker·golang·kvm
芝士就是力量啊 ೄ೨18 小时前
提高服务器安全-采用密钥公钥登录而非密码登录-详细操作步骤
运维·服务器·安全
渠过客18 小时前
【运维】PM2 使用完全指南:Node.js 应用进程管理利器
运维·node.js
木下~learning18 小时前
Linux 驱动:RK3399 从零手写 GT911 电容触摸屏驱动(完整可运行)
linux·运维·服务器
wanhengidc19 小时前
流量清洗的作用是什么?
运维·服务器·网络·安全·web安全·智能手机