docker学习笔记(二)——镜像的常用操作

上一篇文章介绍了docker在centos中的安装过程及核心概念讲解,这一篇我们主要讲解镜像的常用操作。

1. 获取镜像

命令:

docker pull <域名>/<namespace>/<repo>:<tag>

例如:

docker pull ubunt

说明:
镜像是Docker运行容器的前提。
用户可以使用docker pull 命令从网络上下载镜像。运行如上命令即可下载ubuntu的镜像,当然如果不加域名,则默认到Docker hub官方仓库 https://hub.docker.com/ 搜索下载镜像,如果不显式地指定tag,则默认会选择latest标签,即下载仓库中最新版本的镜像。
这里写图片描述
ubuntu的镜像下载比较慢,耐心等待。

2. 查看镜像列表

命令:

docker images

说明:
使用docker images命令可以列出本地主机上已有的镜像。
信息含义:来自于哪个仓库、镜像的标签信息、镜像的ID号(唯一)、创建时间、镜像大小。
这里写图片描述
可以看到我们刚刚下载好的ubuntu镜像。

3. 查看镜像信息

命令:

docker inspect <image_id>

如:

docker inspect f2a91732366c

说明:
docker inspect命令返回的是一个JSON的格式消息,如果我们只要其中的一项内容时,可以通过-f参数来指定。Image_id通常可以使用该镜像ID的前若干个字符组成的可区分字符串来替代完成的ID。
这里写图片描述
如果只想查看Created属性,可以

docker inspect -f {{.Created}} f2a91732366c 

这里写图片描述
其他属性同理。

如果觉得image_id过长的话,可以尝试只输入image_id的前几位,不过要保证输入的前几位没有重复的。
这里写图片描述
可以看到,结果和上面的一样。

4. 查找镜像

命令:

docker search <image_name>

说明:
使用docker search命令可以搜索远端仓库中共享的镜像,默认搜索Docker hub官方仓库中的镜像。列名分别为镜像名称、镜像描述、获得stars数、是否为官方镜像、是否自动构建。
这里写图片描述

5. 删除镜像

命令:

docker rmi <image>:<tag>

说明:
使用docker rmi命令可以删除镜像,其中image可以为标签或ID。
注意:
当同一个镜像拥有多个标签,docker rmi只是删除该镜像多个标签中的指定标签而已,而不影响镜像文件。
当有该镜像创建的容器存在时,镜像文件默认是无法被删除的。

为了测试,我们先给ubuntu镜像打个标签,命令:

docker tag 0458a4468cbc linsuren/ubuntu:test

这里写图片描述
可以看到现在已经多出了一个image id和ubuntu相同的镜像,只是TAG不同。
现在我们把它删掉,命令:

docker rmi linsuren/ubuntu:test

这里写图片描述
现在ubuntu只有一个镜像了,如果我们现在执行

docker rmi ubuntu:latest

则会把该镜像文件彻底删除。

现在我们用ubuntu创建一个容器,并输出Hello World,再尝试删除镜像,发现不能删除,但是我们可以加上-f实现强制删除,当然并不建议大家这样做。
这里写图片描述

6. 创建镜像

创建镜像的方法有三种:基于已有的镜像的容器的创建、基于本地模板导入、基于Dockerfile创建。
本篇主要介绍基于已有的镜像的容器的创建。
命令:

docker commit <options> <container_id> <repository:tag>

参数说明:
-a , –author : 作者信息
-m , –meassage : 提交消息
-p , –pause=true : 提交时暂停容器运行
例如:

 docker commit -a "linsurn" -m "add test.test" 0458a4468cbc  linsurn/test

7. 迁出镜像

命令:

docker save -o <image>.tar <image>:<tag>

参数说明:
-o:设置存储压缩后的文件名称
说明:
可以使用docker save命令来迁出镜像,其中image可以为标签或ID。
这里写图片描述

8.载入镜像

命令:

docker load --input <image>.tar 或 docker load < <image>.tar

说明:
使用docker load命令可以载入镜像,其中image可以为标签或ID。
这将导入镜像及相关的元数据信息(包括标签等),可以使用docker images命令进行查看。
为了便于查看,我们先将hello-world镜像删除,再将刚才迁出的载入。
这里写图片描述
我们可以看到新载入的镜像仓库名和TAG都是none,不符合规范,所以我们可以对其打TAG
这里写图片描述

9.上传镜像

命令:

docker push <域名>/<namespace>/<repo>:<tag>

说明:
可以使用docker push命令上传镜像到仓库,默认上传到DockerHub官方仓库(需要登录,自行注册)。
这里写图片描述
现在我们登陆自己的docker hub就可以看到新上传的镜像啦。
这里写图片描述

关于镜像的操作就介绍这么多,下一篇将介绍容器的常用操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值