给定的 my-registry/my-image:0.1.0
my-registry
是注册表名称my-image
是镜像名称?0.1.0
是标签?版本号?my-image:0.1.0
是名称?镜像?my-registry/my-image:0.1.0
是完全作用域的名称?
有没有“正式”的方法来区分这些部分?我的使用情况是:当我编写脚本来找出正确的参数进行Docker构建时,我总是很难找到适当的方法来区分例如“my-image”和“my-image:tag”。
给定的 my-registry/my-image:0.1.0
my-registry
是注册表名称my-image
是镜像名称?0.1.0
是标签?版本号?my-image:0.1.0
是名称?镜像?my-registry/my-image:0.1.0
是完全作用域的名称?有没有“正式”的方法来区分这些部分?我的使用情况是:当我编写脚本来找出正确的参数进行Docker构建时,我总是很难找到适当的方法来区分例如“my-image”和“my-image:tag”。
镜像名称由斜杠分隔的名称组件构成,可选地前缀为注册表主机名。
标签通常被认为是冒号后面的部分。因此,尽管忽略了超过两个斜杠分隔组件的情况:
my-registry
是注册表my-registry/my-image
是(镜像)名称0.1.0
是标签(名称)似乎没有对单元 my-registry/my-image:0.1.0
、my-image
和 my-image:0.1.0
进行命名(除了将 my-image
称为“名称组件”)。你可以称 my-registry/my-image:0.1.0
为已打标签的名称,如果你采用将 my-image
称为项目的方法(这是我的个人做法),那么你可以称 my-image:0.1.0
为已打标签的项目。
请注意,尽管上述内容,docker image
将 my-registry/my-name
单元称为“仓库”。我个人更喜欢使用“名称”术语来描述此单元。
docker build -t my-registry/the-image-name:tag
(其中标签可以是任何您想要的内容,例如:镜像类型(debian、centos、nginx、myApp、lb、php等)。latest
标签构建镜像。my-registry/the-image-name:myApp
tag
,那么更容易跟踪你正在构建的Docker镜像。my-regsitry/the-image-name:myApp-v1.0.0