容器的基本概念之镜像命名解析

一:Docker镜像命名解析

镜像是Docker最核心的技术之一,也是应用发布的标准格式。无论你是用docker pull image,或者是在Dockerfile里面写FROM image,从Docker官方Registry下载镜像应该是Docker操作里面最频繁的动作之一了。那么docker镜像是如何命名的,这也是Docker里面比较容易令人混淆的一块概念:Registry,Repository, Tag and Image。

  • 下面是在本地机器运行docker images的输出结果:
    在这里插入图片描述
    常说的"ubuntu"镜像其实不是一个镜像名称,而是代表了一个名为ubuntu的Repository,同时在这个Repository下面有一系列打了tag的Image,Image的标记是一个GUID,为了方便也可以通过Repository:tag来引用.
docker.io/centos:7
registry/repository:tag
  • 那么Registry又是什么呢?Registry存储镜像数据,并且提供拉取和上传镜像的功能。
  • Registry中镜像是通过Repository来组织的,而每个Repository又包含了若干个Image。
    • Registry包含一个或多个Repository
    • Repository包含一个或多个Image
    • Image用GUID表示,有一个或多个Tag与之关联

下面这条命令使用的是一个镜像比较完整的名称,也就是所谓的GUID命名方式:

docker push 192.168.245.136:5000/busybox

当一个镜像的名称不足以分辨这个镜像所代表的含义时,你可以通过tag将版本信息添加到run命令中,以执行特定版本的镜像。

例如:docker run ubuntu:14.04
# docker tag -h
Usage: docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]
Tag an image into a repository  #给镜像打标签入库
-f, --force=false Force
--help=false Print usage

给镜像打标签

#docker tag 11662b14f5e0 ubuntu:jdk1.7
发布了45 篇原创文章 · 获赞 26 · 访问量 4244

猜你喜欢

转载自blog.csdn.net/zy_xingdian/article/details/103616669
今日推荐