如何在不删除图像本身的情况下删除 Docker 中的图像标签?

Mih*_*hai 213 docker

假设我想标记一个 Docker 镜像,然后打错字。如何在不删除图像本身的情况下删除标签?手册页和 Docker 文档都没有提到删除标签。

docker tag 0e5574283393 my-imaj
docker tag 0e5574283393 my-image
# docker untag my-imaj # There is no "docker untag"!
Run Code Online (Sandbox Code Playgroud)

Ric*_*eld 299

如果您的图像标记了多个标签,docker rmi则将删除该标签,但不会删除图像。

所以在你的例子中......

# docker rmi my-imaj
Run Code Online (Sandbox Code Playgroud)

... 将删除该标签并将图像与另一个正确的标签一起保留。

  • 答案一如既往*使用`--help`*,不要懒惰阅读。`docker image remove --no-prune`.. 以防有人感兴趣。 (8认同)
  • **这是错误的,它只是删除了我的图像。** 幸运的是,知道 docker 我已经很怀疑了,并且之前使用 `docker save` 创建了一个备份。 (5认同)
  • @peterh 答案明确指出`如果你的图像被标记有多个标签......`,它应该使用注释中的命令进行更新,该命令解释了如何在不删除图像的情况下删除最后一个标签。 (5认同)
  • 谢谢。我希望他们在文档中提到这一点:-/ (4认同)
  • 如果我要删除的标签是最后一个,则图像将被删除。所以我想知道主题中问题的答案是什么?如何删除标签并保持图像缓存? (3认同)

小智 45

运行docker rmi REPOSITORY:TAG以删除标记。

REPOSITORYTAG值来自docker images输出。

例如

$ docker rmi my-image:0e5574283393
Untagged: my-image:0e5574283393
Run Code Online (Sandbox Code Playgroud)


小智 27

从一个空的 docker repo 开始,通过键入以下内容导入图像:

#docker run hello-world
Run Code Online (Sandbox Code Playgroud)

运行docker images命令以列出图像。结果应如下所示:

REPOSITORY        TAG           IMAGE ID          CREATED           SIZE
hello-world       latest        7bc42cc48a84      4 weeks ago       316MB
Run Code Online (Sandbox Code Playgroud)

现在让我们通过运行以下命令来创建一个名为v1的图像标签docker tag

#docker tag hello-world:latest hello-world:v1
Run Code Online (Sandbox Code Playgroud)

如果我们运行该docker images命令,我们将看到我们的新标签,如下所示:

REPOSITORY        TAG           IMAGE ID          CREATED           SIZE
hello-world       latest        7bc42cc48a84      4 weeks ago       316MB
hello-world         v1          7bc42cc48a84      4 weeks ago       316MB
Run Code Online (Sandbox Code Playgroud)

要删除特定标签(以回答原始问题),请运行 docker rmi hello-world:v1,其中v1是标签名称。输出将如下所示:

#docker rmi hello-world:v1
Untagged: hello-world:v1
Run Code Online (Sandbox Code Playgroud)

运行docker images命令以列出图像。请注意,图像标签已被删除:

REPOSITORY        TAG           IMAGE ID          CREATED           SIZE
hello-world       latest        7bc42cc48a84      4 weeks ago       316MB
Run Code Online (Sandbox Code Playgroud)