Docker容器增加ram
我已经启动了几个docker容器,并使用docker统计数据验证了其中一个容器从启动到重新启动都会增加ram内存的消耗 我的问题是,是否有任何方法可以验证这种消耗来自docker容器中的何处。有一些方法可以检查容器内部的消耗量,docker stats风格的一些东西,但用于容器内部Docker容器增加ram,docker,memory-management,statistics,docker-compose,Docker,Memory Management,Statistics,Docker Compose,我已经启动了几个docker容器,并使用docker统计数据验证了其中一个容器从启动到重新启动都会增加ram内存的消耗 我的问题是,是否有任何方法可以验证这种消耗来自docker容器中的何处。有一些方法可以检查容器内部的消耗量,docker stats风格的一些东西,但用于容器内部 感谢您的合作。不确定这是否是您的要求,但这里有一个示例: (开始前): 运行测试容器docker运行--rm-it ubuntu 通过键入apt get update和apt get Install stress安装
感谢您的合作。不确定这是否是您的要求,但这里有一个示例: (开始前):
docker运行--rm-it ubuntu
apt get update
和apt get Install stress
安装
stress--vm bytes$(awk'/MemAvailable/{printf”%d\n',$2*0.9;}'
(它将开始消耗内存)top
如果你去一个新的终端,你可以键入docker container exec-it top
,你会得到如下结果:
(请注意,%MEM
使用的PID 285
是68.8%
)
2.带有ps aux的
同样,从新的终端输入docker container exec-it ps aux
(请注意,%MEM
使用的PID 285
是68.8%
)
我对这件stress
事情的理解来源于这个问题:我相信stress
不必安装在这里,因为他/她想获得mem统计数据。所以@tgogos所说的top
或ps aux
应该可以做到。是的,这是正确的。我只是出于演示的目的使用它。
docker container exec -it dreamy_jang top
top - 12:46:04 up 22 min, 0 users, load average: 1.48, 1.55, 1.12
Tasks: 4 total, 2 running, 2 sleeping, 0 stopped, 0 zombie
%Cpu(s): 20.8 us, 0.8 sy, 0.0 ni, 78.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 6102828 total, 150212 free, 5396604 used, 556012 buff/cache
KiB Swap: 1942896 total, 1937508 free, 5388 used. 455368 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
285 root 20 0 4209376 4.007g 212 R 100.0 68.8 6:56.90 stress
1 root 20 0 18500 3148 2916 S 0.0 0.1 0:00.09 bash
274 root 20 0 36596 3072 2640 R 0.0 0.1 0:00.21 top
284 root 20 0 8240 1192 1116 S 0.0 0.0 0:00.00 stress
docker container exec -it dreamy_jang ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 18500 3148 pts/0 Ss 12:25 0:00 /bin/bash
root 284 0.0 0.0 8240 1192 pts/0 S+ 12:39 0:00 stress --vm-byt
root 285 99.8 68.8 4209376 4201300 pts/0 R+ 12:39 8:53 stress --vm-byt
root 286 0.0 0.0 34400 2904 pts/1 Rs+ 12:48 0:00 ps aux