Ответ об ошибке от демона: конфликт: невозможно удалить 2602b4852593 (нельзя принудительно) — изображение имеет зависимые дочерние изображения

Я не могу удалить образы докеров. Получение ниже ошибки.

docker image rm -f $(docker image ls -aq)
Error response from daemon: conflict: unable to delete 6ab53ec1a8c9 (cannot be forced) - image is being used by running container d65f1c6b7982
Error response from daemon: conflict: unable to delete 2602b4852593 (cannot be forced) - image has dependent child images

Версия докера:

docker --version
Docker version 17.05.0-ce, build 89658be
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
3
0
4 261
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Проблема

Error response from daemon: conflict: unable to delete 6ab53ec1a8c9 (cannot be forced) - image is being used by running container d65f1c6b798

Как говорится в сообщении, у вас запущен контейнер, который использует изображение, которое вы пытаетесь удалить, поэтому возникает ошибка.

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

Лучший способ

docker image rm -f $(docker image ls -aq)

Вместо того, чтобы использовать вышеупомянутый хак из старых времен, вы можете использовать сейчас:

docker image prune -a

Флаг -a удалит все неиспользуемые образы докеров, а это означает, что те, которые используются запущенными контейнерами, не будут затронуты, поэтому это может быть то, что вы хотите использовать для достижения того, что вы пытаетесь сделать.

Помощь для него:

docker image prune --help                                                                                                                                                                                 
Usage:  docker image prune [OPTIONS]

Remove unused images

Options:
  -a, --all             Remove all unused images, not just dangling ones
      --filter filter   Provide filter values (e.g. 'until=<timestamp>')
  -f, --force           Do not prompt for confirmation

Я даже использовал docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q), чтобы остановить и удалить даже все контейнеры. Это не помогло избавиться от сообщения об ошибке при последующем удалении образа в моем случае, мне пришлось использовать команду docker image prune -a, которая удалила все мои образы, так как после остановки и удаления всех контейнеров я забыл повторно запустить контейнеры (что я должен был сделать, чтобы сохранить их изображения при использовании этой команды обрезки).

questionto42 12.02.2021 21:28

Другие вопросы по теме