🚨ERROR🚨
Docker <none> 이미지 삭제
코딩베이비
2022. 12. 6. 12:18
🚨 문제 발생
docker에서 컨테이너를 이미지로 변환 시도
➡️ 기존의 이미지와 동일한 이름으로 변환을 시도해버림
➡️ 기존의 이미지는 <none>이 되고 만들기를 시도한 이미지는 잘 만들어짐
➡️ <none> 이미지는 필요없을 것 같아서 삭제!!
➡️ 실패
(똑같은 이름의 이미지를 만들고자 했을 때 매번 위와 같은 방식으로 만들어지는지는 잘 모르겠다..!)
<none> 이미지 삭제하는 방법
리눅스 명령어 활용
docker rmi $(docker images -a | grep "<none>" | awk '{print $3}')
<none> 이라는 단어를 포함한 이미지 목록을 $를 통해 파라미터로 넘겨준다.
도커 images 명령어 활용
docker rmi $(docker images -q --filter "dangling=true")
repository나 tag가 <none>인 이미지를 삭제한다.
처음으로 이미지 삭제를 시도했을 때에는 stopped container에서 사용 중이여서 삭제가 불가능하다고 떴다.
그래서 아래의 코드를 통해 중지 중인 컨테이너를 조회해봤다.
#-a 옵션을 통해 중지 중인 컨테이너까지 확인할 수 있다.
docker ps -a
삭제할 수 있는 명령어를 찾아보다 prune이라는 명령어를 찾았다.
(Docker 1.13.x 버전부터 사용할 수 있는듯!)
docker container prune
#prune 명령어가 나오기 전 명령어
docker rm $(docker ps -q -f status=exited)
prune 명령어를 실행 후 다시 <none> 이미지 삭제를 시도했고, 이번엔 성공!
참고
https://www.lainyzine.com/ko/article/docker-rm-removing-docker-containers/
https://simbasimba.tistory.com/40