2025.07.30 - [Docker] - 도커 이미지 다운로드 하기
도커 이미지 다운로드 하기
컨테이너를 실행하려면 도커 이미지가 필요하다.이미지를 다운받기 위해서는 다음과 같은 명령어를 입력하면 된다.docker pull 그리고 다운받은 이미지 리스트를 보고 싶으면 다음과 같은 명령어
jun-coding.tistory.com
지난 포스팅에서 이미지를 다운로드 하고, 조회를 하는 기능을 알아봤다.
이미지를 조회했을 때 어떤 정보들이 나오는지 아주 조금 더 자세히 알아보자.
이미지 조회하기
아래 명령어로 다운로드 받은 이미지를 조회할 수 있었다.
docker image ls
설명 | |
REPOSITORY | 이미지 저장소 명을 나타낸다. |
TAG | 이미지의 버전을 나타낸다. |
IMAGE ID | 각 이미지에 부여된 고유한 ID를 나타낸다. |
CREATED | 이미지를 다운로드 한 날짜가 아닌 이미지가 생성된 날짜이다. |
SIZE | 이미지의 용량을 나타낸다. |
이미지 삭제하기
기존에 있던 nginx 이미지를 삭제해보자.
IMAGE ID를 rm 명령어와 함께 입력하여 삭제할 수 있다.
ID의 일부만 입력해줘도, 입력한 ID로 시작하는 이미지가 삭제된다.
docker image rm <IMAGE ID>
그런데, 다음과 같은 에러가 뜨면서 삭제되지 않았다.
이전에 nginx 이미지가 실행중인 컨테이너를 stop 시켜놨었는데,
stop 중인 컨테이너에 있는 이미지이기 때문에 삭제할 수 없다는 에러가 뜬다.
왜 컨테이너가 stop 상태임에도 삭제할 수 없을까?
도커 이미지는 '컨테이너를 만들기 위한 설계도나 템플릿 같은 존재'라고 했었다.
컨테이너의 실행/정지 상태와 상관없이 컨테이너가 존재한다면 그 이미지를 참조중이다.
따라서 이미지가 사라지면 컨테이너 파일시스템이나 구조에 문제가 생기게 된다.
그래서 먼저 컨테이너를 삭제한 후, 이미지를 지워야 한다.
위 터미널 캡쳐본 마지막에 컨테이너 id가 보일 것이다.
다음과 같은 명령어로 컨테이너를 먼저 지워주자.
docker rm <CONTAINTER ID>
그리고 나서 다시 이미지를 삭제하고,
이미지 목록을 다시 보면 잘 삭제가 된 것을 볼 수 있다.
만약 중단된 컨테이너가 사용하는 이미지를 이런 과정 없이 삭제하고 싶다면,
다음 명령어로 강제로 삭제해주면 된다.
여기서 중요한 것은 이 명령어는 '중단된 컨테이너'가 사용하는 이미지만 삭제 가능하다는 것이다.
docker image rm -f <IMAGE ID>
만약 컨테이너가 사용하고 있지 않은 이미지들을 모두 삭제하고 싶다면 다음 명령어를 입력하면 된다.
docker image rm -f $(docker images -q)
여기서 `docker images -q`는 로컬에 있는 모든 이미지의 ID를 출력한다.
그리고 $()로 감싸주게 되면, 이것들을 앞에 있는 명령어의 인자로 넘겨주게 된다.
따라서 모든 도커 이미지의 ID를 불러와서,
모든 ID에 삭제 명령어를 내린다고 생각하면 된다.
'Docker' 카테고리의 다른 글
컨테이너 관련 명령어 알아보기 (2) | 2025.07.31 |
---|---|
컨테이너 생성 / 실행하기 (2) | 2025.07.31 |
도커 이미지 다운로드 하기 (0) | 2025.07.30 |
Docker를 활용해서 Nginx 설치 및 실행하기 (1) | 2025.07.30 |