Остановить/Удалить все Docker контейнеры/images

Остановить/Удалить все Docker контейнеры/images

Хотелось бы рассказать как можно остановить или удалить все Docker контейнеры. Если до сих пор не знаете как это сделать, тогда данная статья «Остановить/Удалить все Docker контейнеры» поможет вам.

Остановить/Удалить все Docker контейнеры

Ничего сложного тут нет, ниже приведены команды.

Остановить все Docker контейнеры.

# docker stop $(docker ps -a -q)

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

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

Опция –q (–quiet) — дает возможно узнавать  идентификаторы самих контейнеров с утилитой ps.

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

$ yes| docker container prune

Удалить все Docker images

Смотрим что имеется в системе:

# docker images

И удаляем:

# docker rmi $(docker images -q)

Пример:

┌(vagrant@vagrant-ansible)─(✓)─(02:42 pm Wed Feb 01)
└─(~/magento2/php)─(2 files, 72Kb)─> sudo docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
<none>              <none>              063421c62d7a        23 minutes ago      594 MB
nginx               test                dab545fbd9bf        2 days ago          182 MB
php                 7-fpm               65ec79b1c89d        7 days ago          377 MB
debian              jessie              e5599115b6a6        2 weeks ago         123 MB

┌(vagrant@vagrant-ansible)─(✓)─(02:51 pm Wed Feb 01)
└─(~/magento2/php)─(2 files, 72Kb)─> sudo docker rmi $(sudo docker images -q)
Deleted: sha256:063421c62d7ade9928ca666ad8dc0f07d5e546e1b53fc5bb89b5bcf36cdad9ea
Deleted: sha256:b0c6ccd75a1930b4e0cdb75aae28d962fe9b4cecd55aea2b8b0c3b365f08a78d
Deleted: sha256:0da8e714a17c186fcd351c53fe25ae4d0105b7ad267227a308e9926bea5d95da
Deleted: sha256:7e0a2e0026ee0f4ab26096ed0ca7594c267de67078657dd8dd6819e767b90b27
Untagged: nginx:test
Deleted: sha256:dab545fbd9bf2566a31ec47cee304d61e288eb598ea469a9de2afd79e523da1c
Deleted: sha256:e6da6fb03708a99307f2582d5ebb0e8dc47f63e98dfc063fdbac43f60e3b2578
Deleted: sha256:cf5aa7032eb791eaa23be959084274c611f60ea6a3b62281d9683dd67153dc85
Deleted: sha256:3aeae8a9989b76772293e0fdf179bfa6f7b7a82e31e6835e5bff57c4ba897c28
Deleted: sha256:e7014a4458090bf79716fc4670cbdad6cbc36525300f931b1f4ddb437f496033
Deleted: sha256:13adabc029b38e096c64bedd406b4eb1bb0314223e7996e0d58dbc9c923644e7
Deleted: sha256:22822c235b2309275ee5f79937adda468a54f7fab953257899eb232ef4612b13
Deleted: sha256:5be10d4710f377eb207186005d3e335abb64c33c140d615d24fcfa9a3cc2dfa5
Untagged: php:7-fpm
Untagged: php@sha256:9b2dbe7685c8c1c9ac43b567e1df3612cd2675da9ae637d0ff2c2c4025d51e6d
Deleted: sha256:65ec79b1c89dcec422e73d6f248323d1326ad026aef02955d4571ccbfe7bf91a
Deleted: sha256:5f37d22adac789b4d945118836e44069197935728890c89c9af64ac3f9842ff4
Deleted: sha256:e146e2a73bb94fa24068da8aab32eadb5e7f14224b542d137a4ac16fa1cdca27
Deleted: sha256:bf6af13fd9216a4193148d13627556c7cee7b18be4722f8ca3e4ea6775a2fdce
Deleted: sha256:72e066d4f36a2d40f1c8d1a0d9e77008c523c09ea8dd81df3407939a1e7d0d52
Deleted: sha256:dcb6b5b90fe5b308ce9be7913b426acd0d636c528277694e53e1f0198b5cf9a8
Deleted: sha256:9a3e5909a4fe6b3f447587787371ae79fd1ea2985287b06e4834b14a3baae769
Deleted: sha256:9a3e6283158eb52e55bcd8d3550724be68508a5994774337cac50526b6a171ff
Deleted: sha256:c1353703109f5062e4ccac91f2631464e113d94a811b1f6b95b46cbe2db6ecd4
Untagged: debian:jessie
Untagged: debian@sha256:abbe80c8c87b7e1f652fe5e99ff1799cdf9e0878c7009035afe1bccac129cad8
Deleted: sha256:e5599115b6a67e08278d176b05a3defb30e5564f5be6d73264ec560b484514a2
Deleted: sha256:a2ae92ffcd29f7ededa0320f4a4fd709a723beae9a4e681696874932db7aee2c

┌(vagrant@vagrant-ansible)─(✓)─(02:51 pm Wed Feb 01)
└─(~/magento2/php)─(2 files, 72Kb)─> sudo docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

┌(vagrant@vagrant-ansible)─(✓)─(02:51 pm Wed Feb 01)
└─(~/magento2/php)─(2 files, 72Kb)─> 

Для удаления всех неиспользоваемых образов, можно использовать еще:

$ docker images -q |xargs docker rmi

Так же, можно:

$ docker rmi $(docker images | awk '{ print $3; }')

Вот еще отличный вариант:

$ docker rmi -f $(docker images | grep "<none>" | awk "{print \$3}")

Так же, есть нативная команда чтобы удалить все неиспользуемые images с хоста:

$ yes| docker image prune

Хочу отметить следующее — что имеется «-f» опция для того чтобы принудительно удалить docker образы (images)/ docker контейнеры:

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

# docker rm -f $(ps docker -q -a)

Вот и все, все гениальное — просто! На этом, моя тема «Остановить/Удалить все Docker контейнеры» завершена.

5 thoughts on “Остановить/Удалить все Docker контейнеры/images

  1. спасибо!
    сделал sh скрипт из вышеуказанных команд — стало удобно удалять)

  2. Подскажите пожалуйста,как полностью удалить все, что связано с файлом docker-compose.yml. Так чтобы после запуска запустился проект с нуля.?
    Я запустил через compos, zabbix север состоящий из 3 контейнеров, после чего внес настройки в самом zabbix, создал несколько хостов. Не могу понять, как мне удалить весь проект? удаляю все контейнеры и образы, после нового старта, все равно запускается zabbix сервер с внесенными мной изменениями, с добавленными хостами.

    • Ты примонтируй папку чтобы конфиги были у тебя на компьютере(хосте) и потом там правь все изменения.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.