Docker系列(三):常用命令(run,stats,logs)使用详解

Docker 提供了丰富的操作命令,命令可以根据需要添加参数选项来执行个性化操作。本文对 Docker 常用的命令和参数选项的使用进行详解。参考官方文档-CN, 官方文档-EN

Docker运维

docker logs

容器日志默认存在路径(Ubuntu 16.4.x):

1
2
3
/var/lib/docker/containers/****/****-json.log

其中****表示容器的ID。

使用 docker logs 获取容器的日志,用法:docker container logs [OPTIONS] CONTAINER

参数选项 默认值 描述
- -deails true 显示日志的详细信息
- -follow, -f false 实时显示追加的日志信息
- -since 显示从某个时间开始的日志
- -tail all 从日志未尾显示的行数
- -timestamp,-t false 显示日志的时间戳

示例:

  1. docker logs –tail 100 bfb7afe692d8 //显示最后100行日志
  2. docker logs –since “2018-06-21T11:10:00” bfb7afe692d8 //显示2018-06-21 11:10:00以后的日志
  3. docker logs –since 30m bfb7afe692d8 //显示最近30分钟的日志
  4. docker logs -t –since=”2018-06-21T11:10:00” –until “2018-06-21T11:30:00” bfb7afe692d8 //查看一段时间内的日志

docker stats

docker stats:显示容器使用资源的统计信息,包括 CPU,内存,网络等使用信息。
命令官网:https://docs.docker.com/engine/reference/commandline/stats/

参数选项 描述
- -all , -a 默认显示所在正在运行的容器
- -format 使用 Go 模板格式化打印信息
- -no-stream 只显示第一条信息,关闭实时显示
- -no-trunc 不截短显示(CONTAINER ID默认是截取前12位显示,全部是64位)
  1. 显示所有正在运行的容器使用资源的信息

    $ docker stats

  2. 显示指定容器的使用资源的统计信息
    可以指定多个正在运行的容器,通过空格分隔

    docker stats [CONTAINER ID | NAME] [CONTAINER ID | NAME]
    例:$ docker stats 5a1cb53774f4
    例:$ docker stats 7e00242c6202 5a1cb53774f4 redis

  3. 对显示的统计信息格式化输出
    以表格显示 Container,CPUPerc,MemUsage

    1
    2
    3
    4
    5
    $ docker stats --all --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}"
    $ docker stats --format "{{.Container}}: {{.CPUPerc}}"` //没有标题

    Linux下的格式模板:
    > "table {{.ID}}\t{{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}\t{{.MemPerc}}\t{{.NetIO}}\t{{.BlockIO}}\t{{.PIDs}}"

Docker系列(三):常用命令(run,stats,logs)使用详解

http://blog.gxitsky.com/2018/06/20/docker-3-commons-command-desc/

作者

光星

发布于

2018-06-20

更新于

2021-02-05

许可协议

评论