docker镜像的常用操作

1.获取镜像:

命令:

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

说明:

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

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

 

2.查看镜像列表

 

命令:

 

docker images

 

说明:

 

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

 

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

 

3.查看镜像信息

 

命令:

 

docker inspect <image_id>

 

说明:

 

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

 
 

4.查找镜像

命令:

docker search <image_name>

说明:

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

 5.删除镜像

命令:

docker rmi <image>:<tag>

说明:

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

注意:

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

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

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

当同一个镜像拥有多个标签,docker rmi +镜像id 删除时会:

Error response from daemon: conflict: unable to delete 4ca3a192ff2a (must be forced) - image is referenced in one or more repositories

加-f参数可以强制删除。

  
当有该镜像创建的容器存在时,镜像文件默认是无法被删除的,
Error response from daemon: conflict: unable to delete c54a2cc56cbb (must be forced) - image is being used by stopped container 99a2532be5aa
 
 

6.创建镜像

进入容器:

命令:

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

参数说明:

-a , --author : 作者信息

-m , --meassage : 提交消息

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

说明:

基于已有的镜像的容器的创建。

 

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命令进行查看。

先删除原有镜像,再导入镜像。发现丢失元数据(即仓库信息和标签名为none),是因为导出的时候使用的是镜像id导致的 

解决方式是导出镜像时使用“镜像仓库:镜像标签”而不是镜像id 

加上元数据

 

9.上传镜像

 

命令:

 

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

 

说明:

 

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

 

 
 
 

 

 





posted @ 2017-01-17 12:44  玄霄2015  阅读(341)  评论(0编辑  收藏  举报