Docker详解

Posted dwlovelife

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker详解相关的知识,希望对你有一定的参考价值。

序言:上一章我们初步介绍了一下Docker的概念,那么这次我们着手于Docker的使用,了解一下常见的Docker的操作命令。此外不管学习什么东西,我们不但要了解纵向的知识体系,最好能加上横向的扩展,进行类比,Docker的命令风格和Git有着种种相似。好了废话不多说,我们开始Docker详解第二章吧。

Docker详解(一)
?

Docker常用命令

开胃菜,Docker的帮助命令

  1. docker version 查看docker的版本信息
  2. docker info 显示 Docker 系统信息,包括镜像和容器数
  3. docker --help Docker的帮助命令

?

1. 镜像命令

①、docker images 列出本地主机上的镜像

参数说明:例:docker images -a

-a:列出本地所有的镜像(含中间镜像层)

-q:只显示镜像ID

--digests:显示镜像的摘要信息

--no-trunc:显示完整的镜像信息

技术图片

各个选项说明:

REPOSITORY:表示镜像的仓库源

TAG:镜像的标签

IMAGE ID:镜像ID

CREATED:镜像创建时间

SIZE:镜像大小

同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。

如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像

?

?

②、docker search 从仓库中搜索指定的镜像

参数说明:例:docker serarch -s 10 tomcat

--no-trunc:显示完整的镜像描述

-s:列出收藏数不小于指定值的镜像

--automated:只列出 automated build类型的镜像

技术图片

?

?

③、docker rmi -f 删除镜像

  • docker rmi -f 镜像ID 删除单个镜像
  • docker rmi -f 镜像名1:TAG 镜像名2:TAG 删除多个
  • docker rmi -f $(docker images -qa) 删除全部

技术图片

?

?

④、docker pull 下载镜像

参数说明:例:docker pull tomcat

技术图片

?

2. 容器命令

注意:有镜像才能创建容器,这是一个根本前提

2.1 常用的容器命令

①、docker run [option] image [command] 新建并启动容器

参数说明:例:docker run -it centos /bin/bash

使用镜像 centos:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。

--name="容器新名字": 为容器指定一个名称;

-d: 后台运行容器,并返回容器ID,也即启动守护式容器;

-i:以交互模式运行容器,通常与 -t 同时使用;

-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;

-P: 随机端口映射;

-p: 指定端口映射;

技术图片

?

②、docker ps 列出当前所有正在运行的容器

参数说明: 例:docker ps

-a:列出当前所有正在运行的容器+历史上运行过的

-l:显示最近创建的容器

-n:显示最近n个创建的容器

-q:静默模式,只显示容器编号

--no-trunc:不截断输出
技术图片

?

③、退出容器,两种退出方式

exit 容器停止退出

ctrl + p + q 容器不停止退出

技术图片

?

④、容器启停命令

  • 启动容器:docker start 容器ID或者容器名
  • 重启容器:docker restart 容器ID或者容器名
  • 停止容器:docker stop 容器ID或者容器名
  • 强制停止容器:docker kill 容器ID或者容器名

技术图片

?

⑤、删除已停止的容器

  • 删除单个容器:docker rm 容器ID
  • 删除多个容器:docker rm -f $(docker ps -a -q)

技术图片

?

2.2 重要的容器命令

①、 docker run -d 容器名 启动守护式容器

说明: Docker容器后台运行就必须有一个前台进程,容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。
技术图片

?

②、docker logs -f -t --tail 容器ID

-t:是加入时间戳

-f:跟随最新的日志打印

--tail:数字显示最后多少条

技术图片

?

③、docker top 容器ID 查看容器内运行的进程

技术图片

?

④、docker inspect 容器ID 查看容器内部细节

技术图片

?

⑤、进入正在运行的容器并以命令行交互

  • docker exec -it 容器ID bashShell 在容器中打开新的终端,并且可以启动新的进程

技术图片

?

  • docker attach 容器ID 直接进入容器终端的命令,不会启动新的进程

技术图片

?

⑥、docker cp 容器ID:容器内路径 目标主机路径 从容器内拷贝文件到主机上

技术图片
?
?
总结
技术图片

以上是关于Docker详解的主要内容,如果未能解决你的问题,请参考以下文章

Docker删除报错:Error response from daemon: conflict: unable to delete 08b152afcfae (must be forced)(代码片段

Docker常用指令和镜像操作详解一文速学+实例代码

markdown [Docker] Docker片段列表和命令#linux #docker #snippets

14.VisualVM使用详解15.VisualVM堆查看器使用的内存不足19.class文件--文件结构--魔数20.文件结构--常量池21.文件结构访问标志(2个字节)22.类加载机制概(代码片段

Python中verbaim标签使用详解

markdown docker-compose片段