使用docker stats命令可以查看容器的内存,但是有时候docker stats命令获得的数据可能准确,可以参考下面这种方式

先通过docker ps -a 找到容器的container id
在这里插入图片描述

再使用ps -ef 找到容器对应的进程
在这里插入图片描述

获得容器对应的pid后,就可以使用top、pmap、ps等查看进程内存的命令查看容器的内存占用情况了

  1. top
    top -p 5140
    内容解释

    PID:进程的ID
    USER:进程所有者
    PR:进程的优先级别,越小越优先被执行
    NInice:值
    VIRT:进程占用的虚拟内存
    RES:进程占用的物理内存
    SHR:进程使用的共享内存
    S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
    %CPU:进程占用CPU的使用率
    %MEM:进程使用的物理内存和总内存的百分比
    TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
    COMMAND:进程启动命令名称

  2. pmap
    pmap -d 5140

    在这里插入图片描述

  3. ps
    ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid' | grep 5140
    在这里插入图片描述
    其中rsz为实际内存

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐