Docker 镜像标签
| 描述 | 创建一个指向 SOURCE_IMAGE 的标签 TARGET_IMAGE |
|---|---|
| 用法 | docker image tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG] |
| 别名 | docker tag |
描述
一个完整的镜像名称具有以下格式和组成部分:
[HOST[:PORT_NUMBER]/]PATH
HOST: 可选的注册表主机名指定了镜像所在的位置。 主机名必须符合标准 DNS 规则,但不能包含 下划线。如果您不指定主机名,该命令默认使用 Docker 的公共 注册表,地址为registry-1.docker.io。请注意,docker.io是 Docker 公共注册表的规范引用。PORT_NUMBER: 如果存在主机名,其后可选择性地以:8080格式跟随注册表端口号。PATH: 路径由斜杠分隔的组件组成。每个组件可以包含小写字母、数字和分隔符。分隔符定义为句点、一个或两个下划线,或一个或多个连字符。组件不能以分隔符开头或结尾。虽然 OCI 分发规范 支持两个以上的斜杠分隔组件,但大多数镜像仓库仅支持两个斜杠分隔组件。对于 Docker 公共镜像仓库,路径格式如下:[NAMESPACE/]REPOSITORY: 第一个可选组件通常是用户或组织的命名空间。第二个必选组件是仓库名称。当命名空间不存在时,Docker 使用library作为默认命名空间。
在镜像名称之后,可选的 TAG 是一个自定义的、人类可读的清单标识符,通常是镜像的特定版本或变体。标签必须是有效的 ASCII 字符,可以包含小写和大写字母、数字、下划线、句点和连字符。它不能以句点或连字符开头,且长度不得超过 128 个字符。如果您不指定标签,该命令默认使用 latest。
您可以使用名称和标签将镜像分组在一起,然后 推送它们到仓库。
示例
通过 ID 标记引用的镜像
将 ID 为 0e5574283393 的本地镜像标记为 fedora/httpd,标签为
version1.0:
$ docker tag 0e5574283393 fedora/httpd:version1.0
给通过名称引用的镜像打标签
将本地镜像 httpd 标记为 fedora/httpd,标签为 version1.0:
$ docker tag httpd fedora/httpd:version1.0
请注意,由于未指定标签名称,因此会为现有的本地版本 httpd:latest 创建别名。
标记由名称和标签引用的镜像
要将名为 httpd 且标签为 test 的本地镜像标记为 fedora/httpd,
使用标签 version1.0.test:
$ docker tag httpd:test fedora/httpd:version1.0.test
为私有仓库标记镜像
若要将镜像推送到私有仓库而非公共 Docker 仓库,您必须包含仓库的主机名和端口(如有必要)。
$ docker tag 0e5574283393 myregistryhost:5000/fedora/httpd:version1.0