Docker使用示例(3) – 调试容器

打印日志



通过跟踪日志调试正在运行的程序是一种较少干扰的方法。下面的例子相当于在容器中执行了tail -f some-application.log命令。

  1. docker logs --follow --tail 10 7786807d8084

如果你的日志里没有包含时间戳,可以添加–timestamps标志。

监控资源占用



监控系统资源使用情况是一种比较有效找到资源占用过多的程序的方法。下面的例子与通常使用的top命令一样。

  1. docker stats

可以监控几个指定容器的资源:

  1. docker stats 7786807d8084 7786807d8085

Docker统计显示如下信息:
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O
7786807d8084 0.65% 1.33 GB / 3.95 GB 33.67% 142.2 MB / 57.79 MB 46.32 MB / 0 B
默认情况下,docker stats命令显示的是容器的id,这对于识别容器没什么帮助,如果你想显示容器的名称,可以使用:

  1. docker stats $(docker ps --format '{{.Names}}')

监控容器里的进程



下面的例子相当于传统的ps命令:

  1. docker top 7786807d8084

可以监控指定的进程,如faux:

  1. docker top 7786807d8084 faux

或者获取以root运行的进程列表:

  1. docker top 7786807d8084 -u root
标签:容器Docker 发布于:2019-11-21 04:24:14