Docker学习笔记(3)

如何安装Docker?请参考上一篇文章(传送门)
Docker环境信息、容器生命周期管理部分命令参考上一篇文章(传送门)
镜像仓库相关命令、镜像管理相关命令参考上一篇文章(传送门)
如果没什么意外,这应该是基础命令的最后一篇了…
总结到了一张脑图上,可以做个参考,查看高清版请点我

容器运维操作

1.docker attach
连接正在运行的容器,观察该容器的运行情况,或与容器的主进程进行交互

1
2
3
docker attach [OPTIONS] CONTAINER

--sig-proxy=false:确保CTRL-D或CTRL-C不会关闭容器

示例:

1
2
[root@localhost ~]# docker attach fcc9bdf1587f
root@fcc9bdf1587f:/#

attach
2.docker inspect
查看镜像和容器的详细信息,默认会列出全部信息,可以通过–format参数来指定输出的模板格式

1
2
3
4
5
docker inspect [OPTIONS] NAME|ID [NAME|ID...]

-f :指定返回值的模板文件
-s :显示总的文件大小
--type :为指定类型返回JSON

示例:

1
[root@localhost ~]# docker inspect ubuntu:latest

inspect
3.docker ps
常用的选项有-a和-l,-a选项可以查看所有的容器,包括停止的容器;-l选项只查看最新创建的容器,包括不在运行的容器

1
2
3
4
5
6
7
8
9
10
docker ps [OPTIONS]

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

示例 列出所有创建的容器CONTAINER ID:

1
[root@localhost ~]# docker ps -a -q


4.docker rename
重命名容器

1
docker rename CONTAINER NEW_NAME

示例:

1
[root@localhost ~]# docker rename 48432e783e65 ctf-xss

rename
5.docker stats
显示容器资源使用情况统计信息的实时流

1
2
3
4
5
docker stats [OPTIONS] [CONTAINER...]

--all , -a 显示所有容器(默认显示刚刚运行)
--format 使用模板输出
--no-trunc 不要截断输出

示例:

1
[root@localhost ~]# docker stats ctf-xss

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

1
docker top [OPTIONS] CONTAINER [ps OPTIONS]

示例:

1
[root@localhost ~]# docker top ctf-xss

top
7.docker cp
用于容器与主机之间的数据拷贝

1
2
3
4
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

-L :保持源目标中的链接

示例1 将本目录下的test.php文件复制到容器的’/var/www/html/‘目录下:

1
2
3
4
[root@localhost ~]# docker cp test.php 5198ec963e43:/var/www/html/
[root@localhost ~]# docker exec -it 5198ec963e43 /bin/bash
root@5198ec963e43:/# ls /var/www/html
index.phptest.php


示例2 将容器内’/var/www/html/index.php’复制到本机/root目录下:

1
2
3
[root@localhost ~]# docker cp 5198ec963e43:/var/www/html/index.php /root/
[root@localhost ~]# ls
index.phptest.php


8.docker diff
检查容器里文件结构的更改

1
docker diff [OPTIONS] CONTAINER

示例:

1
[root@localhost ~]# docker diff 5198ec963e43

diff

系统日志相关命令

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

1
2
3
4
5
docker events [OPTIONS]

-f:根据条件过滤事件
--since:从指定的时间戳后显示所有事件
--until:流水时间显示到指定的时间为止

示例 显示docker 2019年7月22日后的所有事件:

1
[root@localhost ~]# docker events --since="2019-07-22"

events
2.docker history
查看指定镜像的创建历史

1
2
3
4
5
docker history [OPTIONS] IMAGE

-H :以可读的格式打印镜像大小和日期,默认为true
--no-trunc :显示完整的提交记录
-q :仅列出提交记录ID

示例:

1
[root@localhost ~]# docker history ctf-sqli:1

history
3.docker logs
获取容器的日志

1
2
3
4
5
6
docker logs [OPTIONS] CONTAINER

-f : 跟踪日志输出
--since :显示某个开始时间的所有日志
-t : 显示时间戳
--tail :仅列出最新N条容器日志

示例 查看容器nginx的日志输出:

1
[root@localhost ~]# docker logs -f 49c0e49db6f7

logs
部分命令参考来自菜鸟教程(传送门)

文章作者: Linuz
文章链接: https://linuz.me/2019/07/23/Docker-3/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Linuz's Blog
敢不敢赏脸一次