Как удалить несколько изображений docker с одним imageID?



Я создал локальный реестр docker, а затем извлек некоторые из моих образов docker из Docker hub и затем переместил их в локальный реестр. Теперь я хочу удалить свои локальные изображения. Но проблема здесь заключается в том, что 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 одинаковы для обоих изображений. Как я могу их удалить?



EDIT





  • Мой докер версия:



    Docker version 1.8.2, build 0a8c2e3




  • Вывод docker rmi 810001cb03af:



    Ответ на ошибку от демона: конфликт, не удается удалить изображение 810001cb03af, поскольку оно помечено в нескольких репозиториях, используйте -f для принудительного удаления ошибки: не удалось удалить изображения: [810001cb03af]



  • Если я сделаю это docker rmi -f 81000, он удалит их обоих, и мне нужно снова потянуть.

646   6  

6 ответов:

Вот способ, которым вы могли бы это сделать. Выполните команду:

docker images | grep 810001cb03af | awk '{print $1 ":" $2}' | xargs docker rmi

Где '810001cb03af' - Ваш идентификатор изображения.

Вот один из способов :

Данные репозитория и тега могут быть предоставлены команде "docker rmi" для удаления изображения, если идентификатор изображения совпадает.

Команда

docker rmi [repository_name1]:[tag1] [repository_name2]:[tag2]

Пример

docker rmi test-nginx:latest ubuntu:latest

Примечание: нужно назвать и пометить изображение соответствующим образом, чтобы эффективно использовать вышеупомянутую команду для требования, упомянутого в вопросе.

Обратитесь к Docker docs для справки команды "docker rmi": здесь

Выполните следующую команду, чтобы удалить несколько изображений docker с одинаковым идентификаторомизображения .

sudo docker rmi -f **IMAGE ID**

Этот сценарий точно описан в документации по командам rmi

Вы можете удалить изображение, используя его короткий или длинный идентификатор, тег или дайджест. Если изображение имеет один или несколько тегов, ссылающихся на него, вы должны удалить их все, прежде чем изображение будет удалено. Ссылки на дайджест удаляются автоматически, когда изображение удаляется тегом.

Дано,

$ 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

Примечание: это не несколько изображений с одинаковым идентификатором. Это фактически один образ, на который ссылаются в нескольких репозиториях (т. е. задается несколько имен/тегов)

Я только что проверил документы Docker, и я думаю, что это тоже можно сделать

Rmi

Вы можете удалить изображение, используя его короткий или длинный идентификатор, тег или дайджест. Если изображение содержит один или несколько тегов или дайджест-ссылок, необходимо удалить их все до удаления изображения.

Поэтому вместо использования ID u можно сделать что-то вроде этого- - -

$ docker rmi test1 Untagged: test1:latest $ docker rmi test2 Untagged: test2:latest

Попробуйте удалить изображения с помощью digest,

    $ 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

Comments

    Ничего не найдено.