![Bash 출력에서 grep docker id를 사용해 보세요.](https://linux55.com/image/119241/Bash%20%EC%B6%9C%EB%A0%A5%EC%97%90%EC%84%9C%20%E2%80%8B%E2%80%8Bgrep%20docker%20id%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%B4%20%EB%B3%B4%EC%84%B8%EC%9A%94..png)
이건 내 명령이야
docker images --filter label=my_label=intro2
그리고 출력
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> 3b3cb3ba4220 45 hours ago 1.34GB
어떻게 grep 합니까 3b3cb3ba4220
? 또한 grep/awk 작동 방식에 대한 일반적인 설명을 제공해 주시면 감사하겠습니다.
답변1
docker images --filter label=my_label=intro2 --format "{{.ID}}"
Docker를 직접 사용하지 않아 이것이 작동하는지 확인할 수 없지만 여기에 있습니다.수동설명하다.
이 --format
옵션은 다음에 설명되어 있습니다.매뉴얼의 또 다른 부분.
답변2
조금 늦을 수도 있습니다. 그러나 저장소와 태그가 "<none>"인 이미지를 정지 이미지라고 합니다.
이게 뭐야?도커 문서나는 "라고 말해야한다태그가 지정되지 않은 이미지 표시(비어 있음)"부분"필터" 부분:
$ docker images --filter "dangling=true"
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> 8abc22fbb042 4 weeks ago 0 B
<none> <none> 48e5f45168b9 4 weeks ago 2.489 MB
<none> <none> bf747efa0e2f 4 weeks ago 0 B
그러면 이미지 트리의 잎(중간 레이어가 아님)인 라벨이 지정되지 않은 이미지가 표시됩니다. 이러한 이미지는 새로 빌드된 이미지가 이미지 ID에서 repo:tag를 제거하여 태그가 지정되지 않은 상태로 남겨둘 때 발생합니다. 컨테이너가 현재 이미지를 사용하고 있는 동안 이미지를 삭제하려고 하면 경고가 발생합니다. 이 플래그를 사용하면 일괄 청소가 가능합니다.
Docker는 이러한 매달려 있는 ID를 추출하는 정확한 명령을 제공합니다. grep할 필요가 없습니다. 다음을 사용하세요:
docker images --format "{{.ID}}" --filter "dangling=true"