了解 docker 资源限制

了解 docker 资源限制

我的docker引擎有以下资源限制:

  • 4 个 CPU
  • 4096 MB 内存
  • 2048 MB 交换
  • 64 GB 磁盘大小

docker 容器正在使用默认资源分配运行。现在我正在使用调查容器资源使用情况docker stat。输出:

CONTAINER ID        NAME                                                        CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
df09b7636ef2        getstartedlab_articleservice.3.799hopivzdful5fkphy1l2skn    0.12%               204MiB / 913.3MiB     22.34%              69.9kB / 73kB       108MB / 12.3kB      32
afd5f157a3e2        getstartedlab_articleservice.1.r5v55711b3fr5q5h9ouu15quq    0.14%               93.56MiB / 913.3MiB   10.24%              104kB / 110kB       122MB / 0B          32
172b3fa09c46        getstartedlab_articleservice.2.pwrxsmnhc8hd1cmnhk9h4nv3e    0.15%               83.93MiB / 913.3MiB   9.19%               158kB / 167kB       183MB / 0B          32
e4199bfe7d92        getstartedlab_customerservice.1.a6xlzdol1dbnk2m481u393hzp   0.15%               71.56MiB / 913.3MiB   7.84%               176kB / 186kB       433MB / 0B          32
5e6d9eece953        getstartedlab_cartservice.1.iigrada1zp43sb8m2snyk9x4r       0.13%               75.66MiB / 913.3MiB   8.28%               180kB / 186kB       478MB / 57.3kB      30
46aff975d07d        getstartedlab_catalogservice.1.wewy4x5zpl23vhzi3r3cpzpi4    0.16%               61.93MiB / 913.3MiB   6.78%               179kB / 185kB       842MB / 111kB       30
41d7b9c2e502        getstartedlab_nginx-default.1.caco2pvdja514ymr3auu7nyq7     0.00%               1.184MiB / 913.3MiB   0.13%               43.7kB / 45.2kB     20MB / 0B           2

可以看到,每个容器的内存限制完全相同。限制设置为 913.3 MB。总共有 7 个容器。

7*913.3MB = 总共使用了 6393.1MB。

MEM USAGE / LIMIT这有什么意义呢?如上所述,我的最大磁盘使用量设置为 64GB (64000MB),RAM 限制设置为 4096MB。这指的是哪种内存?

答案1

MEM USAGE 指的是容器实际使用的内存量。

MEM LIMIT 是容器允许使用的最大内存量。如果容器中的程序试图使用超过该数量的内存,则会被拒绝。

MEM % 是 LIMIT 的百分比 USAGE。

相关内容