1.获取镜像:

命令:

    docker pull <域名>//:

说明:

镜像是Docker运行容器的前提。

用户可以使用docker pull 命令从网络上下载镜像。对于镜像来说,如果不显式地指定tag,则默认会选择latest标签,即下载仓库中最新版本的镜像。

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker

    默认是从docker官方下载的。只有docker官方的可以不需要增加命名空间直接进行下载。

2.查看镜像列表

命令:

    docker images

说明:

    使用docker images命令可以列出本地主机上已有的镜像。

    信息含义:来自于哪个仓库、镜像的标签信息、镜像的ID号(唯一)、创建时间、镜像大小。

「初级篇」跟我一起学docker(三)--镜像的基本操作_上传_02

 

3.查看镜像信息

命令:

    docker inspect

说明:

    docker inspect命令返回的是一个JSON的格式消息,如果我们只要其中的一项内容时,可以通过-f参数来指定。Image_id通常可以使用该镜像ID的前若干个字符组成的可区分字符串来替代完成的ID。

「初级篇」跟我一起学docker(三)--镜像的基本操作_ubuntu_03

    查看镜像的某一个详细信息

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_04

4.查找镜像

命令:

    docker search

说明:

    使用docker search命令可以搜索远端仓库中共享的镜像,默认搜索Docker hub官方仓库中的镜像。

「初级篇」跟我一起学docker(三)--镜像的基本操作_上传_05

5.删除镜像

 

命令:

    docker rmi

说明:

    使用docker rmi命令可以删除镜像,其中image可以为标签或ID。

注意:

    当同一个镜像拥有多个标签,docker rmi只是删除该镜像多个标签中的指定标签而已,而不影响镜像文件。

    当有该镜像创建的容器存在时,镜像文件默认是无法被删除的。

如果一个镜像就有一个tag的话,删除tag就删除了镜像的本身。

    一个镜像做一个tag

「初级篇」跟我一起学docker(三)--镜像的基本操作_ubuntu_06

    执行删除tag操作

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_07

    删除镜像操作

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_08

重新下载镜像,方便下一步关于镜像和容器的关系演示

「初级篇」跟我一起学docker(三)--镜像的基本操作_ubuntu_09

    如果镜像里面有容器正在运行,删除镜像的话,会提示error,系统默认是不允许删除的,如果强制删除需要加入-f操作,但是docker是不建议这么操作的,因为你删除了镜像其实容器并未删除,直接导致容器找不到镜像,这样会比较混乱。

运行一个镜像里面的容器

「初级篇」跟我一起学docker(三)--镜像的基本操作_ubuntu_10

    查看运行中的容器

「初级篇」跟我一起学docker(三)--镜像的基本操作_上传_11

    删除镜像,报错误error,有一个容器正在这个镜像内运行

「初级篇」跟我一起学docker(三)--镜像的基本操作_ubuntu_12

    强制删除

「初级篇」跟我一起学docker(三)--镜像的基本操作_上传_13

    已经找不到镜像,删除镜像未删除容器的后果

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_14

6.创建镜像

命令:

    docker commit

参数说明:

    -a , --author : 作者信息

    -m , --meassage : 提交消息

    -p , --pause=true : 提交时暂停容器运行

说明:

    基于已有的镜像的容器的创建。再次下载ubuntu,以ubuntu为例子创建

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_15

    运行ubuntu,-ti把容器内标准绑定到终端并运行bash,这样开跟传统的linux操作系统没什么两样,现在我们直接在容器内运行。这个内部系统都是极简的只保留我们的一些系统的运行参数,里面很多vi命令可能都是没有的。

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_16

    退出容器exit

容器创建成镜像的方法:

    通过某个容器d1d6706627f1 创建对应的镜像,有点类似git

「初级篇」跟我一起学docker(三)--镜像的基本操作_上传_17

    发现通过docker images 里面多了一个镜像

    liming/test的仓库

「初级篇」跟我一起学docker(三)--镜像的基本操作_上传_18

7.迁出镜像

命令:

save

参数说明:

    -o:设置存储压缩后的文件名称

说明:

    可以使用docker save命令来迁出镜像,其中image可以为标签或ID。

「初级篇」跟我一起学docker(三)--镜像的基本操作_ubuntu_19

 

8.载入镜像

命令:

    load

说明:

    使用docker load命令可以载入镜像,其中image可以为标签或ID。这将导入镜像及相关的元数据信息(包括标签等),可以使用docker images命令进行查看。我们先删除原有的liming/test镜像,执行查看镜像,然后在导入镜像

「初级篇」跟我一起学docker(三)--镜像的基本操作_上传_20

    为了确定导入的镜像是否是原来删除的那个镜像,我们进入镜像,查看下text.txt

    是我们输入的idig88这个内容

「初级篇」跟我一起学docker(三)--镜像的基本操作_ubuntu_21

    可能这个镜像的名字不符合docker的要求因为都是,重新命名一下

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_22

9.上传镜像

命令:

    docker push <域名>//:

说明:

    可以使用docker push命令上传镜像到仓库,默认上传到DockerHub官方仓库(需要登录)。

开始提示我权限不足,因为我没有登录。

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_23

    登录之后提示

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_24

    登录后删除还是权限不足

「初级篇」跟我一起学docker(三)--镜像的基本操作_上传_25

    因为我们liming这个名字跟官网的zhugeaming名字不一致我修改下在试试

「初级篇」跟我一起学docker(三)--镜像的基本操作_ubuntu_26

    开始上传了 

去官网看看是否上传成功

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_27

「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_28


「初级篇」跟我一起学docker(三)--镜像的基本操作_docker_29