首页/云/云与容器速查/Compose 资源限制 deploy.resources
本包目录(340 条)
云基础概念44 条计算与存储56 条网络与安全组33 条
容器与 Docker106 条
Kubernetes68 条容器排障33 条

Compose 资源限制 deploy.resources

在服务里用 deploy.resources.limits 限制 CPU 与内存(Compose V2 单机也生效):防止单个服务吃光宿主;老 V1 写法 mem_limit/cpus 不推荐混用。

云与容器速查云更新于 2026-10-12
限制deploy.resources.limits: cpus: "1.5" / memory: 512M
预留deploy.resources.reservations:Compose 单机语义有限,主要是兼容与展示
旧写法mem_limit / cpus(V1 时代;与 deploy 混用易混乱)
验证docker stats / docker inspect 的 HostConfig 核对

示例

示例
services:
  web:
    image: myapp:1.2.3
    deploy:
      resources:
        limits:
          cpus: "1.5"
          memory: 512M
容器内存超限表现为 OOMKilled(退出码 137):调小限制前先看应用实际峰值。

易错点

  • memory 写 512 不写单位:解析为 512 字节,容器启动即崩
  • 同时写 mem_limit 与 deploy.resources:两套限制纠缠,排查困难

数据来源与参考

  • Docker Docs:Compose deploy resources

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌