를 수행하면 docker volume ls
볼륨 목록은 다음과 같습니다.
DRIVER VOLUME NAME
local 305eda2bfd9618266093921031e6e341cf3811f2ad2b75dd7af5376d037a566a
local 226197f60c92df08a7a5643f5e94b37947c56bdd4b532d4ee10d4cf21b27b319
...
...
local 209efa69f1679224ab6b2e7dc0d9ec204e3628a1635fa3410c44a4af3056c301
한 번에 모든 볼륨을 제거하고 싶습니다. 어떻게하니?
답변
사용하지 않는 모든 데이터 (컨테이너가없는 볼륨 포함)를 제거하는 공식 명령은 docker 1.13과 함께 제공됩니다.
docker system prune
볼륨 만 제한하려면 사용하지 않는 볼륨 만 제거하십시오 .
docker volume prune
또한이 docker image prune
, docker container prune
등 :
자세한 ‘에서 자두하지 않는 도커 객체를 “.
커밋 86de7c0 및 PR 26108을 참조하십시오 .
play-with-docker.com 에서 실제 동작을 볼 수 있습니다 .
/ # docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1296a5e47ef3 hello-world "/hello" 7 seconds ago Exited (0) 6 seconds ago prickly_poincare
/ # docker system prune
WARNING! This will remove:
- all stopped containers
- all volumes not used by at least one container
- all networks not used by at least one container
- all dangling images
Are you sure you want to continue? [y/N] y
Deleted Containers:
1296a5e47ef3ab021458c92ad711ad03c7f19dc52f0e353f56f062201aa03a35
볼륨을 관리하는 전류 (미리 고정 표시기 1.13) 방식이 도입 된 PR 14242와 docker volume
명령 , 어떤 문서 의 코멘트에 년 7 월 2015 :
docker volume rm $(docker volume ls -q --filter dangling=true)
답변
2017 년에 수정 됨 :이 답변은 ’16 년 4 월 16 일에 제공되었으며 현재는 구식이며 1.13 이전의 도커 버전에 대해서만 정확합니다. @VonC의 답변을 사용하십시오. 이제 올바른 것으로 표시됩니다.
사용하지 않는 볼륨을 삭제하려면 내장 된 docker volume rm
명령을 사용할 수 있습니다 . 이 rm
명령은 또한 /var/lib/docker/volumes
볼륨이 아닌 디렉토리를 삭제 하므로 저장하려는 항목을 거기에 넣지 않았는지 확인
하십시오.
$ docker volume ls -qf dangling=true
대청소:
$ docker volume rm $(docker volume ls -qf dangling=true)
ls에 대한 자세한 내용은 여기 , rm에 대한 정보는 여기
답변
이것이 내가 유용하다고 생각한 것입니다 : https://github.com/chadoe/docker-cleanup-volumes
/ var / lib / docker / volumes 및 / var / lib / docker / vfs / dir Docker 버전 1.4.1에서 최대 1.11.x까지 고아 Docker 볼륨을 삭제하는 셸 스크립트
기본적으로 고아 / 매달린 볼륨을 정리하지만 a를 포함 --dry-run
하지만 일부 docker 포함 명령도 기록합니다 (이전 주석에서 참조)
Docker 1.9 이상에 대한 참고 사항
Docker 1.9 이상에서 고아 볼륨을 삭제하려면이 docker-cleanup-volumes 스크립트 대신 기본 제공 Docker 볼륨 명령을 사용할 수도 있습니다. 내장 명령은 또한 볼륨이 아닌 / var / lib / docker / volumes의 디렉토리를 삭제하므로 저장하려는 항목을 넣지 않았는지 확인하십시오.
명부:
$ docker volume ls -qf dangling=true
대청소:
$ docker volume rm $(docker volume ls -qf dangling=true)
또는 작동하지 않는 것이 좋지만 Linux에만 해당됩니다.
$ docker volume ls -qf dangling=true | xargs -r docker volume rm
답변
질문에 답하고 Marc에게서 빌리면 다음과 같이 작동합니다.
$ docker volume rm $(docker volume ls -qf dangling=true | xargs)