때로는 docker의 모든 내용을 지우고 처음부터 시작하고 싶을 때가 있습니다. 모든 Docker 컨테이너와 이미지를 삭제하는 체계적인 방법이 있나요?
컨테이너
$ docker ps -a | head
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7b055e9e5f1f fedora:latest /bin/sh 6 days ago Exited (0) 6 days ago ecstatic_colden
40da968258eb fedora:latest /bin/sh 6 days ago Exited (127) 6 days ago naughty_thompson
5be4581afad6 fedora:latest /bin/bash 6 days ago Exited (0) 6 days ago kickass_wright
4d6c33d4be6d fedora:latest /bin/bash 6 days ago Exited (0) 6 days ago furious_fermat
db7a29bdbc2d fedora:latest /bin/bash 6 days ago Exited (0) 6 days ago mad_hawking
e6b7365690ce fedora:latest /bin/bash 6 days ago Exited (0) 6 days ago trusting_ardinghelli
15655c21fcd3 8018e08e6a58 /bin/sh -c 'apt-get 3 weeks ago Exited (100) 3 weeks ago drunk_bardeen
607547aabbca f02ed0c206d5 /bin/sh -c 'apt-get 3 weeks ago Exited (100) 3 weeks ago cocky_franklin
f031f28bd29a f02ed0c206d5 /bin/sh -c 'apt-get 3 weeks ago Exited (100) 3 weeks ago stoic_mcclintock
그림
$ docker images -a | head
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker master 266a5746d179 2 weeks ago 1.528 GB
<none> <none> c1f6a4b1345c 3 weeks ago 1.526 GB
<none> <none> 6558c36ecb3f 3 weeks ago 1.526 GB
<none> <none> b1b7c7a6b6a7 3 weeks ago 1.24 GB
<none> <none> 0bf9d6bf97e9 3 weeks ago 1.182 GB
<none> <none> 48c444f1d2e7 3 weeks ago 1.182 GB
<none> <none> 5c5c172a0038 3 weeks ago 1.182 GB
<none> <none> de5e09bb86c1 3 weeks ago 1.182 GB
<none> <none> 785aaf265f18 3 weeks ago 1.182 GB
답변1
가장 쉬운 방법은 다음 3단계를 따르는 것입니다.
- 모든 컨테이너 중지
- 모든 컨테이너 제거
- 모든 이미지 삭제
이를 달성하려면 docker ps
및 명령 기능을 사용하여 해당 위치를 전달하거나 docker images
ID 목록을 반환하도록 전환할 수 있습니다. 이렇게 하면 일반적으로 이 두 명령에서 반환되는 모든 내용이 제거되고 다음과 같은 멋진 목록이 제공됩니다.-q
--quiet
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7b055e9e5f1f fedora:latest /bin/sh 6 days ago Exited (0) 6 days ago ecstatic_colden
40da968258eb fedora:latest /bin/sh 6 days ago Exited (127) 6 days ago naughty_thompson
자동 출력
$ docker ps -aq
7b055e9e5f1f
40da968258eb
5be4581afad6
4d6c33d4be6d
노트:둘 다 또는 docker images
스위치를 docker ps
사용하여 모든 ID를 표시합니다.-a
--all
이 출력을 활용하여 다음과 같이 다른 Docker 명령의 출력을 활용하는 Docker 명령을 빌드할 수 있습니다.
$ docker rm $(docker ps -qa)
집을 청소하다
따라서 모든 항목을 삭제하는 작업을 완료하려면 다음 명령을 사용할 수 있습니다.
$ docker stop $(docker ps -qa)
$ docker rm $(docker ps -qa)
$ docker rmi $(docker images -qa)