Как удалить все локальные изображения Docker Docker

Недавно я начал использовать Docker и никогда не понимал, что вместо ctrl-c или docker-compose stop я должен использовать docker-compose down, чтобы избавиться от моих экспериментов. Теперь у меня есть большое количество ненужных изображений докеров.

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

Что-то вроде docker rmi --all --force -all флаг не существует, но я ищу что-то с подобной идеей.

Ответ 1

Чтобы удалить все контейнеры, включая его тома,

docker rm -vf $(docker ps -a -q)

Чтобы удалить все изображения,

docker rmi -f $(docker images -a -q)

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

Ответ 2

Используйте это, чтобы удалить все:

docker system prune -a --volumes

Удалить все неиспользуемые контейнеры, тома, сети и образы

WARNING! This will remove:
    - all stopped containers
    - all networks not used by at least one container
    - all volumes not used by at least one container
    - all images without at least one container associated to them
    - all build cache

https://docs.docker.com/engine/reference/commandline/system_prune/#extended-description

Ответ 3

docker image prune -a

Удалите все неиспользуемые изображения, а не только болтающиеся. Добавьте параметр -f в сила.

Локальная версия докера: 17.09.0-ce, Git commit: afdb6d4, OS/Arch: darwin/amd64

$ docker image prune -h
Flag shorthand -h has been deprecated, please use --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
      --help            Print usage

Ответ 4

Чтобы удалить все изображения:

docker rmi -f $(docker images -a | awk {'print $3'})

Объяснение:

докер изображения -a | awk {'print $ 3'}

Эта команда будет возвращать весь идентификатор изображения, а затем использовать для удаления изображения, используя его идентификатор.

Ответ 5

Простые и удобные команды

Удалить все изображения

docker rmi $(docker images -a)

Удалить контейнеры, которые находятся в состоянии выхода

docker rm $(docker ps -a -f status=exited -q)

Удалить контейнеры, которые находятся в созданном состоянии

docker rm $(docker ps -a -f status=created -q)

ПРИМЕЧАНИЕ: удалите все контейнеры, затем удалите изображения

Ответ 6

Вы можете попробовать вот так:

docker system prune

Ответ 7

Чтобы удалить все изображения:

docker rmi $(docker images -a -q)

где -a это все, а -q возвращает только идентификаторы изображений

Чтобы удалить неиспользуемые изображения и контейнеры:

docker system prune

будьте осторожны, как будто вы используете Docker Swarm, и ваш локальный компьютер присоединяется к удаленному Swarm (как администратор/работник), ваш локальный компьютер будет развернутым репо. выполнение этого, таким образом, удаляет развернутые образы.

Ответ 8

Удалить без вызова докера:

rm -rf /var/lib/docker

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