我创建了一个local docker registry,然后从docker hub中提取了一些docker镜像,然后将它们推送到本地注册表。现在我想删除我的本地图像。但问题是imageID
图像是相同的,我无法删除它们。我搜索了解决方案但我无法找到解决方案。
>> docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
localhost:5000/[repo1] v-0.9.1 810001cb03af 4 weeks ago 594.6 MB
[myaccount]/[repo1] v-0.9.1 810001cb03af 4 weeks ago 594.6 MB
如您所见,两张图片的image ID
相同。我该如何删除它们?
修改
我的码头版:
Docker version 1.8.2, build 0a8c2e3
docker rmi 810001cb03af
的输出:
来自守护程序的错误响应:冲突,无法删除图像810001cb03af,因为它被标记在多个存储库中,使用-f强制错误:无法删除图像:[810001cb03af]
docker rmi -f 81000
它会删除它们,我需要再拉一次。答案 0 :(得分:43)
这是一种可以做到这一点的方法。运行命令:
docker images | grep 810001cb03af | awk '{print $1 ":" $2}' | xargs docker rmi
其中810001cb03af
是您的图片ID。
答案 1 :(得分:22)
这是一种方式:
可以向" docker rmi"提供存储库和标签数据。如果图像ID相同,则删除图像的命令。
命令
docker rmi [repository_name1]:[tag1] [repository_name2]:[tag2]
例如
docker rmi test-nginx:latest ubuntu:latest
注意:需要对图像进行适当的命名和标记,以便有效地使用上述命令来满足问题中提到的要求。
请参阅Docker文档以获取" docker rmi"命令帮助:here
答案 2 :(得分:10)
您可以使用短ID或长ID,其标记或摘要删除图像。如果图像有一个或多个引用它的标记,则必须在删除图像之前删除所有标记。通过标记删除图像时,将自动删除摘要引用。
鉴于,
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
test1 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
test2 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB)
您可以删除标签(最后一个标签也会删除图片):
$ docker rmi test1
Untagged: test1:latest
$ docker rmi test2
Untagged: test2:latest
Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8
或者,强迫它:
$ docker rmi -f fd484f19954f
Untagged: test1:latest
Untagged: test2:latest
Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8
注意:这些不是具有相同ID的多个图片。这实际上是在多个存储库中引用的一个图像(即给定多个名称/标签)
答案 3 :(得分:7)
运行以下命令以使用相同的 IMAGE ID 删除多个泊坞窗图像。
sudo docker rmi -f **IMAGE ID**
答案 4 :(得分:1)
您可以使用docker rmi IMAGE_NAME:TAG_NAME命令,它将起作用。
答案 5 :(得分:1)
您可以通过多种方式删除。
a)仅删除一个:
$ sudo docker rmi login(REPOSITORY NAME):latest(TAG NAME)
b)使用-f
命令删除所有具有匹配ID的对象:
$ sudo docker rmi -f 91dfd8adbf04(IMAGE ID)
答案 6 :(得分:0)
我刚刚登陆Docker文档,我认为这也可以做到
RMI
您可以使用短ID或长ID,其标记或摘要删除图像。如果图像具有一个或多个标记或摘要参考,则必须在删除图像之前删除所有图像。
所以不是使用ID你可以做这样的事情---
$ docker rmi test1
Untagged: test1:latest
$ docker rmi test2
Untagged: test2:latest
答案 7 :(得分:0)
您应尝试使用摘要
删除图像 $ docker images --digests
REPOSITORY TAG DIGEST IMAGE ID CREATED SIZE
localhost:5000/test/busybox <none> sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf 4986bf8c1536
$ docker rmi localhost:5000/test/busybox@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf
Untagged: localhost:5000/test/busybox@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf
Deleted: 4986bf8c15363d1c5d15512d5266f8777bfba4974ac56e3270e7760f6f0a8125
Deleted: ea13149945cb6b1e746bf28032f02e9b5a793523481a0a18645fc77ad53c4ea2
Deleted: df7546f9f060a2268024c8a230d8639878585defcc1bc6f79d2728a13957871b