일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 드라이버
- 도커
- docker registry
- VMware
- docker
- docker-compose
- RUBY
- driver
- 방화벽체크
- Openswan
- DevOps
- 우분투
- window size
- VPN
- 패키지
- port
- golang
- ssh command
- sudo
- 루비
- opsworks
- ubuntu
- VIM
- docker container
- 리눅스
- AWS
- QT
- Linux
- ssh
- Chef
- Today
- Total
구리의 창고
Docker Image - repository 이름으로 삭제하기 본문
소개
Docker를 이리저리 쓰다보면 이미지가 너무 많이 생기는 경우가 발생한다. 그리고 특정 Repository를 검색해 삭제하고 싶을 때도 있다. 자체 명령어에 filter 옵션이 있긴하지만 이걸로는 턱없이 부족한 감이 있다. 리눅스 유틸리티와 조합하면 쉽게 해낼 수 있다.
테스트 환경
일단 Docker 이미지 목록을 확인하려면 docker images로 현재 목록을 확인해야한다. 아래처럼 5개의 이미지가 있다.
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox 1.0.1 efe10ee6727f 2 weeks ago 1.13 MB
busybox 1.0.2 efe10ee6727f 2 weeks ago 1.13 MB
busybox 1.0.5 efe10ee6727f 2 weeks ago 1.13 MB
busybox latest efe10ee6727f 2 weeks ago 1.13 MB
freebox latest efe10ee6727f 2 weeks ago 1.13 MB
busybox와 freebox 이미지가 있는데, 여기서 busybox 이미지만 지워보도록 하자. 여기서 사용 할 유틸리티는 awk 이다.
awk
인풋을 정규식으로 검색하고 공백을 기준으로 n번째 문자열을 출력 할 때 유용한 함수이다. 아래 예제는 공백 기준 2번째 값에 what이 있는지 확인 후 1번째 값을 출력한다.
$ echo 'Hello! what are you doing now?' | awk '$2 ~ /what/ {print $1}'
Hello!
이미지 확인
docker images 출력의 첫 번째 값이 busybox면 확인차 출력하도록한다.
$ docker images | awk '$1 ~ /busybox/ {print $1, $3}'
busybox efe10ee6727f
busybox efe10ee6727f
busybox efe10ee6727f
busybox efe10ee6727f
이미지 삭제
$ docker rmi `docker images | awk '$1 ~ /busybox/ {print $3}'`
Untagged: busybox:1.0.1
Untagged: busybox:1.0.2
Untagged: busybox:1.0.5
Untagged: busybox:latest
Untagged: busybox@sha256:2605a2c4875ce5eb27a9f7403263190cd1af31e48a2044d400320548356251c4
Deleted: sha256:efe10ee6727fe52d2db2eb5045518fe98d8e31fdad1cbdd5e1f737018c349ebb
Deleted: sha256:08c2295a7fa5c220b0f60c994362d290429ad92f6e0235509db91582809442f3
'DevOps' 카테고리의 다른 글
Docker - Container에서 Host로 접속 (Mac) (0) | 2017.11.13 |
---|---|
Docker - v1 registry 접속 실패 404 Not Found (disable-legacy-registry) (0) | 2017.09.25 |
Docker 로그 관리 - logrotate (0) | 2017.07.19 |
Docker Registry V2 설치 (0) | 2017.07.12 |
docker-compose 사용 (0) | 2017.07.12 |
Comments