docker(四)——命令
一、帮助命令
1、docker版本信息查询
[root@localhost ~]# docker version
2、docker详细信息查询
[root@localhost ~]# docker info
3、docker帮助命令
[root@localhost ~]# docker --help
二、镜像命令
1、列出所有本地镜像:docker images

注:
- REPOSITORY:表示镜像的仓库源
- TAG:镜像的标签(版本)
- IMAGE ID:镜像ID
- CREATED:镜像创建的时间
- SIZE:镜像大小
同一个仓库源可以有多个TAG,代表仓库源不通的版本。如果没有指定一个镜像的标签版本,docker则默认使用latest镜像。
docker images 命令参数
- -a:列出本地所有镜像
- -q:只显示镜像ID
- --digests:显示镜像的摘要信息
- --no-trunc:显示完整的镜像信息
2、到docker hub上面查找镜像:docker search xxxx
网址:https://hub.docker.com/search/?type=image
1)、查找所有名为tomcat的镜像docker search
[root@localhost ~]# docker search tomcat

2)、筛选:查询点赞数(STARS)大于等于10的jdk镜像
[root@localhost ~]# docker search -s 10 jdk

- --no-trunc:显示完整的镜像描述
- -s:列出收藏不小于指定值的镜像
- --automated:只列出AUTOMATED值为OK的镜像
3、下载镜像docker pull
1)、docker pull tomcat 等价于 docker pull tomcat:latest。下载镜像时没有指定TAG时,会默认选择最新版本镜像进行下载
[root@localhost ~]# docker pull tomcat
2)、下载指定版本镜像
[root@localhost ~]# docker pull tomcat:8.5.50
4、删除本地镜像docker rmi(容器名或容器ID)
1)、删除最新镜像,可通过镜像ID或者镜像名删除
通过镜像名
[root@localhost ~]# docker rmi tomcat
通过镜像ID
[root@localhost ~]# docker rmi ed94f55483b8
2)、删除指定版本本地镜像
[root@localhost ~]# docker rmi tomcat:8.5.50
3)、强制删除
[root@localhost ~]# docker rmi -f hello-world
4)、删除多个镜像
[root@localhost ~]# docker rmi -f tomcat:8.5.50 hello-world
5)、删除全部镜像
[root@localhost ~]# docker rmi -f $(docker images -qa)
三、容器命令docker run
1、新建并启动容器
1)、从远程仓库下载一个centos镜像
[root@localhost ~]# docker pull centos
2)、新建并启动容器(可根据镜像名或镜像ID新建容器)
[root@localhost ~]# docker run -it 589dc4d40385
或
[root@localhost ~]# docker run -it centos

注:
- 589dc4d40385:centos的镜像ID
- b82dcec6cd4d:该运行的容器ID
docker run命令参数:
- --name:为容器指定一个名称(新建容器的时候如果没有指定别名,则系统会自动分配一个别名)
- -d:后台运行容器,并返回容器ID,也即启动守护式容器
- -i:以交互模式运行容器,通常与-t同时使用
- -t:为容器重新分配一个伪输入终端,通常与-i同时使用
- -P:随机端口映射
- -p:指定端口映射,有以下格式
- ip:hostPort:containerPort
- ip:containerPort
- hostPort:containerPort
- containerPort
2、列出容器docker ps
[root@localhost ~]# docker ps

docker ps命令参数(没有参数时表示显示当前正在运行的容器):
- -a:列出当前所有正在运行的容器+加历史运行过的容器
- -l:显示最近创建的容器
- -n:显示最近n个创建的容器
- --no-trunc:不截断输出
3、退出容器
1)、容器停止退出exit(退出容器后数据会丢失)
[root@b82dcec6cd4d /]# exit
2)、容器不停止退出(先P再Q)
按键盘“Ctrl+P+Q”
4、启动容器docker start(容器名或容器ID)
[root@localhost ~]# docker start b82dcec6cd4d
5、重启容器docker restart(容器名或容器ID)
[root@localhost ~]# docker restart mycentos001
6、停止容器docker stop/kill(容器名或容器ID)
1)、温柔停止(可理解为通过“关机”按钮关机)
[root@localhost ~]# docker stop b82dcec6cd4d
2)、暴力停止(可理解为直接拔电源关机)
[root@localhost ~]# docker kill b82dcec6cd4d
7、后台启动centos,不打开交互窗口
[root@localhost ~]# docker run -d centos /bin/sh -c "while true;do echo hello world;sleep 2;done"
8、查看容器日志docker logs
[root@localhost ~]# docker logs -t -f --tail 3 b1a96627cfa8
docker logs命令参数:
- -t:加入时间戳
- -f:跟随最新的日志打印
- --tail:数字显示最后多少条
9、查看容器内运行的进程docker top(容器名或容器ID)
[root@localhost ~]# docker top b1a96627cfa8
10、查看容器内部细节docker inspect(容器名或容器ID)
[root@localhost ~]# docker inspect b1a96627cfa8
11、进入正在运行的容器并以命令行交互
1)、进入docker容器命令行进行操作docker attach(容器名或容器ID)
[root@localhost ~]# docker attach 65a549aa1d12
2)、在docker容器命令行外(linux命令行)进行docker内部的操作docker exec
[root@localhost ~]# docker exec -it 65a549aa1d12 ls -l /tmp

docker exec也可以进去docker终端
[root@localhost ~]# docker exec -it 65a549aa1d12 /bin/bash

12、从容器内拷贝文件到主机上docker cp
把容器中/home目录下的test.txt文件拷贝到宿主机linux下/root目录
[root@localhost ~]# docker cp 65a549aa1d12:/home/test.txt /root
四、小结
| 命令 | 介绍 |
| attach | 当前 shell 下 attach 连接指定运行镜像 |
| build | 通过 Dockerfile 定制镜像 |
| commit | 提交当前容器为新的镜像 |
| cp | 从容器中拷贝指定文件或者目录到宿主机中 |
| create | 创建一个新的容器,同 run,但不启动容器 |
| diff | 查看 docker 容器变化 |
| events | 从 docker 服务获取容器实时事件 |
| exec | 在已存在的容器上运行命令 |
| export | 导出容器的内容流作为一个 tar 归档文件[对应 import ] |
| history | 展示一个镜像形成历史 |
| images | 列出系统当前镜像 |
| import | 从tar包中的内容创建一个新的文件系统映像[对应export] |
| info | 显示系统相关信息 |
| inspect | 查看容器详细信息 |
| kill | kill 指定 docker 容器 |
| load | 从一个 tar 包中加载一个镜像[对应 save] |
| login | 注册或者登陆一个 docker 源服务器 |
| logout | 从当前 Docker registry 退出 |
| logs | 输出当前容器日志信息 |
| port | 查看映射端口对应的容器内部源端口 |
| pause | 暂停容器 |
| ps | 列出容器列表 |
| pull | 从docker镜像源服务器拉取指定镜像或者库镜像 |
| push | 推送指定镜像或者库镜像至docker源服务器 |
| restart | 重启运行的容器 |
| rm | 移除一个或者多个容器 |
| rmi | 移除一个或多个镜像[无容器使用该镜像才可删除,否则需删除相关容器才可继续或 -f 强制删除] |
| run | 创建一个新的容器并运行一个命令 |
| save | 保存一个镜像为一个 tar 包[对应 load] |
| search | 在 docker hub 中搜索镜像 |
| start | 启动容器 |
| stop | 停止容器 |
| tag | 给源中镜像打标签 |
| top | 查看容器中运行的进程信息 |
| unpause | 取消暂停容器 |
| version | 查看 docker 版本号 |
| wait | 截取容器停止时的退出状态值 |
end

浙公网安备 33010602011771号