Docker的常用命令
1.Docker的常用命令
docker的常用命令分为帮助命令,镜像命令,容器命令,其他命令以及构建命令
1.1帮助命令
docker version #显示docker的版本信息。
docker info #显示docker的系统信息,包括镜像和容器的数量
docker 命令 --help #帮助命令
1.2镜像命令
1.2.1docker images
1. docker images [OPTIONS] ,查看所有本地的主机上的镜像,
2.OPTIONS说明:
-a 列出所有本地的主机上的镜像(含中间映像层)
-q :只显示镜像ID, 例如 docker images -aq #显示所有镜像的id
--digests :显示镜像的摘要信息
--no-trunc :显示完整的镜像信息
3. 命令执行如下:
4. 各个选项说明:
*REPOSITORY:表示镜像的仓库源
*TAG:镜像的标签,也就是版本号,#如果不写tag,默认就是latest,表示,最新版本
*IMAGE ID:镜像ID
*CREATED:镜像创建时间
*SIZE:镜像大小
同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
1.2.2 docker search
1.格式:docker search [OPTIONS] 镜像名字 搜索镜像
2.OPTIONS说明:
--no-trunc : 显示完整的镜像描述;
--automated : 只列出 automated build类型的镜像;
-s : 列出收藏数不小于指定值得镜像
--filter=STARS=3000 #搜索出来的镜像就是STARS大于3000的
1.2.3docker pull
1.格式 docker pull 镜像名[:tag] 下载镜像
2. 情况说明:
#分层下载: docker image 的核心 联合文件系统
docker pull tomcat:8 与 docker pull docker.io/library/tomcat:8 是等价的
1.2.4docker rmi
1.格式如下:
docker rmi -f 镜像ID #删除单个镜像
docker rmi -f 镜像名1:TAG 镜像名2:TAG #删除多个镜像
docker rmi -f $(docker images -qa) #删除全部镜像
1.2.5docker commit
docker commit 提交容器成为一个新的副本
格式: docker commit -m="描述信息" -a="作者" 容器id 目标镜像名:[TAG]
例如: docker commit -a="kuangshen" -m="add webapps app" 容器id tomcat02:1.0
1.2.6 docker push
1.2.7 docker history
1.3容器命令
1.3.1docker run 创建并启动容器
1.格式
docker run [可选参数] image 或者 docker run [可选参数] image:[tag]
2.可选参数说明(常用):有些是一个减号,有些是两个减号
--name="容器新名字": 为容器指定一个名称;
-d: 后台运行容器,并返回容器ID,也即启动守护式容器;
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-P: 随机端口映射;
-p: 指定容器的端口 -p 8080(宿主机):8080(容器) ,有以下四种格式
-p ip:主机端口:容器端口
-p 主机端口:容器端口(常用)
-p 容器端口
容器端口
3.启动交互式容器
使用镜像centos:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。docker run -it centos /bin/bash
1.3.2 docker ps
1. 格式:
docker ps [可选参数] 例如 docker ps -aq #显示所有容器的id
2.可选参数说明(常用)
-a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。
-q :静默模式,只显示容器id
--no-trunc :不截断输出
1.3.3 其他命令
1.启动容器: docker start 容器ID或者容器名
2. 重启容器: docker restart 容器ID或者容器名
3.停止容器: docker stop 容器ID或者容器名
4.退出容器: exit (容器停止并退出);ctrl+P+Q (容器不停止退出)
5.强制停止容器: docker kill 容器ID或者容器名
6.删除已停止的容器: docker rm 容器ID或者容器名
7.删除多个容器: docker rm -f $(docker ps -a -q) 或者 docker ps -a -q | xargs docker rm
8.查看容器内运行的进程信息 :docker top 容器ID
9.查询容器内的细节: docker inspect 容器ID
1.3.4查看容器日志
1. 命令
docker logs -f -t --tail 容器ID
2.说明
-t 是加入时间戳
-f 跟随最新的日志打印
--tail 数字显示最后多少条
1.3.5 进入容器
1.命令
docker exec -it 容器ID bashShe ll或者 docker attach 容器ID
2.两者区别
docker exec #进入当前容器后开启一个新的终端,可以在里面操作。(常用)
docker attach # 进入容器正在执行的终端
1.3.6从容器内拷贝到主机上
命令
docker cp 容器id:容器内路径 主机目的路径
1.4其他命令
1.5构建命令
docker attach 容器ID