실습 환경 : AWS console (2022/09), Visual Studio Code, Xshell7
실습 목적 : Docker Image 명령어를 알아보고 실습해본다.
Docker Image 명령
- docker image는 layer 구조로 구성되어 있다. (overlayFS)
- docker image를 다운로드하면 각각의 layer가 다운로드 된다.
(중복된 layer의 내용이 system에 존재하면 그 layer는 다운로드를 수행하지 않는다.)
- docker image를 현재 시스템에 보유하려면, Dockerfile을 build하여 직접 이미지를 생성하거나, docker registry로부터 이미지 다운로드를 한다.
Docker Image pull 명령으로 이미지 적용하기
1. docker hub로부터 image 다운로드
- docker image는 layer 단위로 다운로드된다.
docker pull httpd
docker pull nginx
docker pull httpd:2
# docker pull [registry위치] [image이름](:버전)
2. 현재 시스템에 존재하는 image목록을 확인
- layer는 /var/lib/docker/overlay2 위치에 저장된다.
docker image ls
docker images
# 동일한 결과를 출력한다
3. image의 세부정보를 확인
- 이미지 구성 layer와 실행정보를 확인할 수 있다.
- hub docker에서 nginx의 Tag와 비교해 본다. (lays 정렬이 반대로 되어있다.)
docker image history nginx
# docker image history [image 이름]
4. 이미지 삭제하기
- 삭제할 image의 정확한 이름 표기
- 현재 container로 동작중인 image는 삭제할 수 없다.
docker image rm httpd
docker image rm httpd:2
docker image rm nginx
# docker image rm [image 이름]
# docker image rm [image 이름:버전]
# docker rmi [image 이름]
ID로 이미지 삭제하기
- 간혹 docker image 목록에서 REPOSITORY와 TAG가 <none>으로 출력되는경우가 있다.
이런 경우 image id를 이용해 삭제한다.
docker rmi 35b3
# docker rmi [IMAGE ID 앞4자리]
참고 자료