容器操作

docker ps : 列出容器

语法
docker ps [OPTIONS]
OPTIONS说明:
  • -a :显示所有的容器,包括未运行的。
  • -f :根据条件过滤显示的内容。
  • –format :指定返回值的模板文件。
  • -l :显示最近创建的容器。
  • -n :列出最近创建的n个容器。
  • –no-trunc :不截断输出。
  • -q :静默模式,只显示容器编号。
  • -s :显示总的文件大小。
实例

列出所有在运行的容器信息。

docker volume 创建 自定义路径 docker容器创建目录_容器


输出详情介绍:

CONTAINER ID: 容器 ID。

IMAGE: 使用的镜像。

COMMAND: 启动容器时运行的命令。

CREATED: 容器的创建时间。

STATUS: 容器状态。

状态有7种:

created(已创建)

restarting(重启中)

running(运行中)

removing(迁移中)

paused(暂停)

exited(停止)

dead(死亡)

PORTS: 容器的端口信息和使用的连接类型(tcp\udp)。

NAMES: 自动分配的容器名称。

docker ps : docker inspect : 获取容器/镜像的元数据。

语法
docker inspect [OPTIONS] NAME|ID [NAME|ID...]
OPTIONS说明:
  • -f :指定返回值的模板文件。
  • -s :显示总的文件大小。
  • –type :为指定类型返回JSON。
实例

docker volume 创建 自定义路径 docker容器创建目录_mysql_02

docker top :查看容器中运行的进程信息,支持 ps 命令参数。

语法
docker top [OPTIONS] CONTAINER [ps OPTIONS]
实例
> docker top mymysql
UID    PID    PPID    C      STIME   TTY  TIME       CMD
999    40347  40331   18     00:58   ?    00:00:02   mysqld

docker attach :连接到正在运行中的容器。

语法
docker attach [OPTIONS] CONTAINER
实例
> docker attach --sig-proxy=false mynginx
192.168.239.1 - - [10/Jul/2016:16:54:26 +0000] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 6.1; 
WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.93 Safari/537.36" "-"

docker events : 从服务器获取实时事件

语法
docker events [OPTIONS]
OPTIONS说明
  • -f :根据条件过滤事件;
  • –since :从指定的时间戳后显示所有事件;
  • –until :流水时间显示到指定的时间为止;
实例
docker events  --since="1467302400"

docker logs : 获取容器的日志

语法
docker logs [OPTIONS] CONTAINER
OPTIONS说明
  • -f : 跟踪日志输出
  • –since :显示某个开始时间的所有日志
  • -t : 显示时间戳
  • –tail :仅列出最新N条容器日志
实例
docker logs -f mynginx

#查看容器mynginx从2016年7月1日后的最新10条日志。
docker logs --since="2016-07-01" --tail=10 mynginx

docker wait : 阻塞运行直到容器停止,然后打印出它的退出代码。

语法
docker wait [OPTIONS] CONTAINER [CONTAINER...]
实例
docker wait CONTAINER

docker export :将文件系统作为一个tar归档文件导出到STDOUT。

语法
docker export [OPTIONS] CONTAINER
实例
》 docker export -o mysql-`date +%Y%m%d`.tar a404c6c174a2
》 ls mysql-`date +%Y%m%d`.tar
mysql-20160711.tar

docker port 用于列出指定的容器的端口映射,或者查找将 PRIVATE_PORT NAT 到面向公众的端口。

语法
docker port [OPTIONS] CONTAINER [PRIVATE_PORT[/PROTO]]
实例
docker port mymysql

docker stats : 显示容器资源的使用情况,包括:CPU、内存、网络 I/O 等。

语法
docker stats [OPTIONS] [CONTAINER...]
OPTIONS 说明
  • –all , -a :显示所有的容器,包括未运行的。
  • –format :指定返回值的模板文件。
  • –no-stream :展示当前状态就直接退出了,不再实时更新。
  • –no-trunc :不截断输出。
实例
docker stats
 CONTAINER ID        NAME                                    CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
b95a83497c91        awesome_brattain                        0.28%               5.629MiB / 1.952GiB   0.28%               916B / 0B           147kB / 0B          9
67b2525d8ad1        foobar                                  0.00%               1.727MiB / 1.952GiB   0.09%               2.48kB / 0B         4.11MB / 0B         2
e5c383697914        test-1951.1.kay7x1lh1twk9c0oig50sd5tr   0.00%               196KiB / 1.952GiB     0.01%               71.2kB / 0B         770kB / 0B          1
4bda148efbc0        random.1.vnc8on831idyr42slu578u3cr      0.00%               1.672MiB / 1.952GiB   0.08%               110kB / 0B          578kB / 0B          2

输出详情介绍:
CONTAINER ID 与 NAME: 容器 ID 与名称。
CPU % 与 MEM %: 容器使用的 CPU 和内存的百分比。
MEM USAGE / LIMIT: 容器正在使用的总内存,以及允许使用的内存总量。
NET I/O: 容器通过其网络接口发送和接收的数据量。
BLOCK I/O: 容器从主机上的块设备读取和写入的数据量。
PIDs: 容器创建的进程或线程数。