惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
博客园 - 司徒正美
WordPress大学
WordPress大学
爱范儿
爱范儿
小众软件
小众软件
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
罗磊的独立博客
博客园_首页
V
V2EX
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Tailwind CSS Blog
大猫的无限游戏
大猫的无限游戏
The Cloudflare Blog
MyScale Blog
MyScale Blog
IT之家
IT之家
H
Help Net Security
Blog — PlanetScale
Blog — PlanetScale
Microsoft Security Blog
Microsoft Security Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Recent Announcements
Recent Announcements
F
Fortinet All Blogs
The GitHub Blog
The GitHub Blog
Y
Y Combinator Blog
人人都是产品经理
人人都是产品经理

博客园 - Hey,Coder!

微信小程序 web方案实现调音器功能 pipenv环境变量配置 .net8验证码 数据库差异对比工具 docker部署prometheus grafana pgexporter Alertmanager ubuntu24 换源 ssh配置 ubuntu24 Harbor部署 ubuntu24 kvm部署 cockpit web管理界面 .net api代理 Ubuntu 24.04 DMAR IOMMU 报错修复 uniapp iOS App 上架 vs文件软链接 Docker 网络别名 .net8通用中间件处理公共返回值结构 .net环境下OpenTelemetry Body 读取注意事项 jaeger界面显示异常 .net opentelemetry collector jaeger c# opentelemetry 自定义export c# opentelemetry 自定义export c# 生成对象的初始化代码 Elasticsearch ILM 与 Data Stream 概念及实例说明文档 portainer httphelper封装 Ocelot + Consul + SignalR 粘性会话 正交软件架构 docker postgresql17 主从复制 rabbitmq总结与c#示例 docker rabbitmq quartz dashboard docker consul registrator 服务自动注册consul 微服务动态扩容
systemctl slice配置docker最大占用cpu 内存
Hey,Coder! · 2026-09-10 · via 博客园 - Hey,Coder!

Docker 全局资源限制配置指南

1. 创建 systemd Slice

创建文件 /etc/systemd/system/docker_limit.slice

[Unit]
Description=Docker global resource slice

[Slice]
CPUAccounting=true
MemoryAccounting=true
CPUQuota=360%
MemoryHigh=12G
MemoryMax=14.4G

执行:

sudo systemctl daemon-reload
sudo systemctl enable --now docker_limit.slice

2. 配置 Docker 守护进程

编辑 /etc/docker/daemon.json

{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "cgroup-parent": "docker_limit.slice"
}

执行:

sudo systemctl restart docker

3. 重启已有容器

无需重建镜像,直接重启即可迁移到新 slice:

docker restart <容器ID或名称>

4. 验证配置生效

# 获取容器 PID
PID=$(docker inspect -f '{{.State.Pid}}' <容器ID>)
# 查看 cgroup 路径
cat /proc/$PID/cgroup

正常输出应包含:0::/docker_limit.slice/docker-<容器ID>.scope


注意事项

  • 驱动匹配:必须确认 docker infoCgroup Driversystemd,否则 slice 不生效。
  • Slice 状态:若报 invalid slice name,请检查 systemctl is-active docker_limit.slice 是否为 active
  • 重启生效:全局配置改完后必须 restart docker;旧容器必须执行 restart 才会进入新 slice。
  • 路径格式daemon.json 中的 cgroup-parent 必须带前导斜杠(/docker_limit.slice)。
  • 资源换算CPUQuota 按核数×90%计算(如4核设360%),内存按总容量×90%设置。