docker 查看进程, 内存, cup消耗的情况

docker 查看进程, 内存,cup 消耗

启动 docker 容器,可以通过 docker inspect 查看进程号

# docker inspect -f '{{.State.Pid}}' 

通过 docker stats 查看内存,cpu 使用

docker stats
docker stats --no-stream
docker stats container-name
docker stats $(docker ps --format={{.Names}})
docker stats --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"
docker stats --no-stream --format "{\"container\":\"{{ .Container }}\",\"memory\":{\"raw\":\"{{ .MemUsage }}\",\"percent\":\"{{ .MemPerc }}\"},\"cpu\":\"{{ .CPUPerc }}\"}"

下面是自定义的格式中可以使用的所有占位符:

.Container 根据用户指定的名称显示容器的名称或 ID。

.Name 容器名称。

.ID 容器 ID。

.CPUPerc CPU 使用率。

.MemUsage 内存使用量。

.NetIO 网络 I/O。

.BlockIO 磁盘 I/O。

.MemPerc 内存使用率。

.PIDs PID 号。

补充:docker查看容器运行内存以及删除命令

1、docker使用cpu、内存、网络、io情况

1.1、docker stats 容器id

node3:~# docker stats 7a20f9671dbd
CONTAINER      CPU %        MEM USAGE / LIMIT   MEM %        NET I/O       BLOCK I/O      PIDS
7a20f9671dbd    0.09%        1.837GiB / 3.859GiB  47.61%       52.3MB / 28.7MB   3.32MB / 16.4kB   62

1.2、-a 显示所有容器(默认显示刚刚运行)

node3:~# docker stats -a

CONTAINER      CPU %        MEM USAGE / LIMIT   MEM %        NET I/O       BLOCK I/O      PIDS
7a20f9671dbd    0.09%        1.837GiB / 3.859GiB  47.61%       52.4MB / 28.7MB   3.32MB / 16.4kB   62
4eeb00be3547    0.69%        34.3MiB / 3.859GiB  0.87%        0B / 0B       5.8MB / 0B     19
c52a162de8e8    0.23%        131MiB / 3.859GiB   3.32%        1.01GB / 860MB   3.25MB / 106kB   22
ff7ed47106ad    0.00%        11.98MiB / 3.859GiB  0.30%        0B / 0B       1.9MB / 11.3MB   9
33b6ad13d1dc    0.13%        3.48MiB / 3.859GiB  0.09%        800B / 0B      0B / 0B       8
06a1d01f5024    0.19%        6.973MiB / 3.859GiB  0.18%        0B / 0B       143kB / 5.37MB   23
5e03f86078fd    0.00%        15.06MiB / 3.859GiB  0.38%        0B / 0B       1.79MB / 4.1kB   13
c78ed69d6c66    0.01%        6.227MiB / 3.859GiB  0.16%        0B / 0B       0B / 0B       7

1.3、显示多个容器的运行信息

docker stats rId1,rId2

2、docker删除命令

2.1、删除所有已经停止的容器

docker rm $(docker ps -a -q)

2.2、删除所有未打 tag 的镜像

docker rmi $(docker images -q | awk '/^<none>/ { print $3 }')

2.3、模糊删除

docker images | grep registry.cn-qingdao.aliyuncs.com/duodianyouhui/dev-server | xargs docker rmi

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • docker images,info,-d等命令报错的解决方法

    一.发现问题 楼主不管输入那个命令,都出现了: FATA[0000] Cannot connect to the Docker daemon. Is 'docker -d' running on this host? 二.解决方法 以及类似的错误,就连docker version命令都报错了,楼主开始找啊找,找到了好多东西,结果发现没一个能行的,最后楼主使用这样的命令: # vim /etc/default/docker 在该文件中添加如下内容: DOCKER_OPTS="-H unix:///

  • docker 内存监控与压测方式

    一直运行的docker容器显示内存已经耗尽,并且容器内存耗尽也没出现重启情况,通过后台查看发现进程没有占用多少内存.内存的监控使用的是cadvisor,计算方式也是使用cadvisor的页面计算方式,所以决定对docker的内存计算做下研究. docker version: Client: Version: 1.12.6 API version: 1.24 Go version: go1.6.4 Git commit: 78d1802 Built: Tue Jan 10 20:20:01 201

  • 解决docker容器重启之后/etc下某些配置文件被重置的问题

    1. /etc/hosts, /etc/resolv.conf和/etc/hostname容器中的这三个文件不存在于镜像,而是存在于于/var/lib/docker/containers/,在启动容器的时候,通过mount的形式将这些文件挂载到容器内部. 因此,如果在容器中修改这些文件的话,修改部分不会存在于容器的top layer,而是直接写入这三个物理文件中. 2.为什么重启后修改内容不存在了? 原因是:每次Docker在启动容器的时候,通过重新构建新的/etc/hosts文件,这又是为什么

  • docker images 如何建立自己的原生镜像

    docker images 如何建立自己的原生镜像 制作image原生镜像需要使用febootstrap工具,需要注意的是,在centos7系列中,默认的源中不带此包,但是在centos6系列中,该包是默认可用使用的. 在centos6中安装febootstrap # yum install febootstrap -y 会安装相应的软件包:fakechroot-2.9-24.5.el6_1.1.x86_64.rpm . fakechroot-libs-2.9-24.5.el6_1.1.x86_

  • docker 容器自定义 hosts 网络访问操作

    在 docker-compose.yml 中增加 extra_hosts 关键字就可以将数据写入到容器的 /etc/hosts. extra_hosts 添加主机名映射. extra_hosts: "somehost:162.242.195.82" "otherhost:50.31.209.229" 将会在/etc/hosts创建记录: 162.242.195.82 somehost 50.31.209.229 otherhost 注意: 如果指向的是本机,不要写容

  • Docker images导出和导入操作

    之前已配置好基础镜像,其他地方也需要用到这些镜像时怎么办呢? 答案:镜像的导入和导出功能. 1.镜像的保存 [root@wxtest1607 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE tomcat8 3.0 90457edaf6ff 6 hours ago 1.036 GB [root@wxtest1607 lixr]# docker save 9045 > tomcat8-apr.tar [root@wxtest1607 li

  • docker 查看jvm内存占用方式

    一.进入docker容器的宿主机,查看运行指定镜像的容器id(结果的第一列): docker ps | grep myImageName(或docker ps | grep java) 二.进入容器内部: docker exec -it containerId sh 三.直接输入top命令: top 可看到基本的容器占用的信息:pid.vsz.cpu.command等.(ctrl+c 或 q,退出top) 四.查看更具体的jvm内存占用: top -m 其中,vsz:Virtual Memory

  • docker 查看进程, 内存, cup消耗的情况

    docker 查看进程, 内存,cup 消耗 启动 docker 容器,可以通过 docker inspect 查看进程号 # docker inspect -f '{{.State.Pid}}' 通过 docker stats 查看内存,cpu 使用 docker stats docker stats --no-stream docker stats container-name docker stats $(docker ps --format={{.Names}}) docker stat

  • 深入理解linux下查看进程内存的使用情况

    动态查看一个进程的内存使用 复制代码 代码如下: 1.top命令top -d 1 -p pid [,pid ...] //设置为delay 1s,默认是delay 3s如果想根据内存使用量进行排序,可以shift + m(Sort by memory usage) 静态查看一个进程的内存使用 复制代码 代码如下: 1.pmap命令pmap pid 2.ps命令ps aux|grep process_name 3.查看/proc/process_id/文件夹下的status文件Name:   ph

  • Shell脚本查看进程内存真实占用情况

    复制代码 代码如下: #!/bin/bash #****************************************************************# # ScriptName: pm # Author: osdba # Create Date: 2010-01-31 # Modify Author: # Modify Date: 2010-01-31 # Function: show processes memory used #******************

  • 如何查看进程实际的内存占用情况详解

    top命令可以查看进程内存的使用,但是不够详细.还有一些命令可以进行更加详细的查看. [root@localhost ~]# cat /proc/5606/statusName:   switch4State:  S (sleeping)Tgid:   5606Pid:    5606PPid:   1TracerPid:      0Uid:    0       0       0       0Gid:    0       0       0       0Utrace: 0FDSize

  • python 监控某个进程内存的情况问题

    目录 python监控某个进程内存 python监控进程并重启 分析了具体思路 相关代码很简单 python监控某个进程内存 测试场景: 某个客户端程序长时间运行后存在内存泄漏问题,现在开发解决了需要去验证这个问题是否还存在,并要求出具相应测试验证报告. 手段: 需要有一个工具能够实时去获取该程序进程一直运行下占用内存,CPU使用率情况. 方法: python去实现这么个监控功能 import sys import time import psutil sys.argv # get pid fr

  • golang进程内存控制避免docker内oom

    目录 背景 测试程序 一.为gc预留空间方案 二.调整gc参数 背景 golang版本:1.16 之前遇到的问题,docker启动时禁用了oom-kill(kill后服务受损太大),导致golang内存使用接近docker上限后,进程会hang住,不响应任何请求,debug工具也无法attatch. 前文分析见:golang进程在docker中OOM后hang住问题 本文主要尝试给出解决方案 测试程序 测试程序代码如下,协程h.allocate每秒检查内存是否达到800MB,未达到则申请内存,协

  • 详解Tomcat中查看JVM内存使用情况

    TOMCAT运行时,实时监控当前应用JVM的使用情况:可以利用Tomcat自带的应用manager查看详情. 首先,确认服务目录webapps下有manager应用 其次,需要创建角色manager和对应的用户,修改/conf/tomcat-users.xml  <?xml version='1.0' encoding='utf-8'?>   <tomcat-users>     <role rolename="tomcat"/>     <r

  • Python 如何查看程序内存占用情况

    目录 查看程序内存占用情况 python查看内存使用 查看程序内存占用情况 flyfish psutil 这里用在查看内存占用情况 memory_profiler输出每一行代码增减的内存 安装 pip install memory_profiler 代码 import numpy as np import os import psutil import gc from memory_profiler import profile @profile def test():     a=np.ful

  • docker启动ES内存溢出的解决方案

    在elasticsearch的config中加jvm.options文件,修改堆栈大小,默认是2GB,直接启动es即可,保证之前已经映射了配置文件. -Xms5g -Xmx5g 完整jvm.options文件如下: ## JVM configuration ################################################################ ## IMPORTANT: JVM heap size ############################

随机推荐