Docker - как удалить containers, images, volumes, and networks: различия между версиями
Admin iph (обсуждение | вклад) |
Admin iph (обсуждение | вклад) |
||
Строка 6: | Строка 6: | ||
Это руководство служит «шпаргалкой», чтобы помочь пользователям Docker организовать свою систему и освободить дисковое пространство, удалив неиспользуемые контейнеры Docker, образы, тома и сети. | Это руководство служит «шпаргалкой», чтобы помочь пользователям Docker организовать свою систему и освободить дисковое пространство, удалив неиспользуемые контейнеры Docker, образы, тома и сети. | ||
− | ====Удаление всех неиспользуемых объектов==== | + | ====Удаление всех неиспользуемых объектов Docker==== |
Команда '''docker system prune''' удалит все остановленные контейнеры, все висячие образы и все неиспользуемые сети: | Команда '''docker system prune''' удалит все остановленные контейнеры, все висячие образы и все неиспользуемые сети: | ||
# docker system prune | # docker system prune | ||
Строка 27: | Строка 27: | ||
Можно использоват флаг -f или --force, чтобы пропустить приглашение. | Можно использоват флаг -f или --force, чтобы пропустить приглашение. | ||
# docker system prune --volumes -f | # docker system prune --volumes -f | ||
+ | |||
+ | ====Удаление контейнеров Docker==== | ||
+ | Контейнеры Docker не удаляются автоматически при их остановке, если вы не запускаете контейнер с использованием флага --rm.<br /> | ||
+ | Для удаления одного или нескольких образов Docker используйте команду docker container rm, а затем CONTAINER ID, которые вы хотите удалить.<br /> | ||
+ | Можно получить список всех контейнеров, используя флаг -a в команде docker container ls: | ||
+ | # docker container ls -a | ||
+ | CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES | ||
+ | 92c8a0bb944e jippi/pritunl "/bin/start-pritunl …" 28 seconds ago Up 27 seconds pritunl-server | ||
+ | |||
+ | Для удаление контенейнера используйте команду: | ||
+ | # docker container rm CONTAINER_ID1 CONTAINER_ID2 | ||
+ | # docker container rm NAME1 NAME2 | ||
+ | |||
+ | Если получаете ошибку: | ||
+ | Error response from daemon: You cannot remove a running container 92c8a0bb944ee0153e50fb09b6178af32812b05370edb1b03f8d537f71024018. Stop the container before attempting removal or force remove | ||
+ | |||
+ | означает, что контейнер запущен и его нужно сперва приостановить командой docker stop CONTAINER_ID1 |
Версия 22:17, 13 февраля 2020
Docker - как удалить containers, images, volumes, and networks
Вступление
Docker позволяет быстро строить, тестировать и развертывать приложения в виде переносимых контейнеров, которые могут работать практически на всех операционных системах
Docker не удаляет неиспользуемые объекты, такие как контейнеры, изображения, тома и сети, если вы явно не указали это сделать. Работая с Docker, вы можете легко накапливать большое количество неиспользуемых объектов, которые занимают значительное дисковое пространство, и загромождают выходные данные, создаваемые командами Docker.
Это руководство служит «шпаргалкой», чтобы помочь пользователям Docker организовать свою систему и освободить дисковое пространство, удалив неиспользуемые контейнеры Docker, образы, тома и сети.
Удаление всех неиспользуемых объектов Docker
Команда docker system prune удалит все остановленные контейнеры, все висячие образы и все неиспользуемые сети:
# docker system prune WARNING! This will remove: - all stopped containers - all networks not used by at least one container - all dangling images - all dangling build cache Are you sure you want to continue? [y/N]
Если вы также хотите удалить все неиспользуемые тома, используйте флаг --volumes:
# docker system prune --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 dangling images - all dangling build cache Are you sure you want to continue? [y/N]
Можно использоват флаг -f или --force, чтобы пропустить приглашение.
# docker system prune --volumes -f
Удаление контейнеров Docker
Контейнеры Docker не удаляются автоматически при их остановке, если вы не запускаете контейнер с использованием флага --rm.
Для удаления одного или нескольких образов Docker используйте команду docker container rm, а затем CONTAINER ID, которые вы хотите удалить.
Можно получить список всех контейнеров, используя флаг -a в команде docker container ls:
# docker container ls -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 92c8a0bb944e jippi/pritunl "/bin/start-pritunl …" 28 seconds ago Up 27 seconds pritunl-server
Для удаление контенейнера используйте команду:
# docker container rm CONTAINER_ID1 CONTAINER_ID2 # docker container rm NAME1 NAME2
Если получаете ошибку:
Error response from daemon: You cannot remove a running container 92c8a0bb944ee0153e50fb09b6178af32812b05370edb1b03f8d537f71024018. Stop the container before attempting removal or force remove
означает, что контейнер запущен и его нужно сперва приостановить командой docker stop CONTAINER_ID1