5.4 이미지 태그를 효율적으로 사용하기
도커 이미지 태그에는 어떤 문자열이라도 포함시킬 수 있다. 앞서 이미 봤듯이 같은 이미지에 여러 개의 태그를 부여하는 것도 가능하다. 태그를 통해 버전을 구별하고 이미지를 사용할 다른 사람들이 자신이 원하는 이미지가 무엇인지 찾을 수 있다.
대부분의 소프트웨어가 소수점으로 구분된 숫자로 버전을 나타낸다. 이 버전 표현법을 따르면 자릿수가 높을수록 해당 자리의 숫자가 바뀌었을 때 버전 간의 차이가 큰데, 이미지 태그에도 비슷한 방법을 쓸 수 있다. 기본적인 방법은 [major].[minor].[patch] 형태를 따르는 것이다. 이런 버전 표현법을 통해 두 버전의 대략적인 차이를 짐작할 수 있다. patch 자리만 바뀐 버전은 변경 내용이 버그 수정뿐이고 기능은 지난 버전과 같다는 식이다. 반면 minor 자리가 바뀐 버전은 추가된 기능은 있으되 기존 기능은 모두 유지하는 것이고, major 자리가 바뀐 버전은 완전히 다른 기능을 가진다는 정보를 유추할 수 있다.
이미지 태그에도 이런 방식을 적용하려면 특정 major 혹은 minor 버전을 유지하거나 최신 버전을 계속 따라가는 등의 선택권을 사용자에게 주어야 한다.
실습 앞서 패키징했던 Go 애플리케이션에 major.minor.patch 형식의 버전 태그를 부여하라.
docker image tag image-gallery registry.local:5000/gallery/ui:latest docker image tag image-gallery registry.local:5000/gallery/ui:2 docker image tag image-gallery registry.local:5000/gallery/ui:2.1 docker image tag image-gallery registry.local:5000/gallery/ui:2.1.106