기본적으로 도커 레지스트리는 도커 허브를 통해 이미지를 업로드 및 버전관리, 다운로드가 이루어 진다.
공식적인 도커 허브는 CLI 및 웹 사이트등의 여러 콘솔을 통해 접근이 가능하다.
검색 명령 또는 registry.docker.com 사이트를 통해서 기존의 이미지들을 검색 할 수 있다.
레지스트리
- 이미지를 운영하고 배포하는 역할을 담당, 서비스 및 기본 레지스트리는 도커 허브임.
저장소
- 관련된 이미지들의 집합.
태그
- 저장소에 있는 이미지에 붙여진 알파벳과 숫자로 된 구분자를 말함.
사설 레지스트리 구성
도커는 사설 레지스트리를 사용하면 개인서버 및 기타 내부저장소에 이미지를 저장, 버전관리, 배포를 할 수 있다.
역시 이 레지스트리또한 컨테이너로 구성되며 다음의 공식적인 명령어로 실행 한다.
# docker run -d --name registry -p 5000:5000 \ --restart=always\ registry:latest
사설 레지스트리는 기본적으로 5000번 포트를 사용함.
또한 레지스트리 컨테이너의 RESTful API를 사용할 수 있음.
다음의 명령어를 통해 실행 후 레지스트리가 정상적으로 작동하는지 확인.
# curl localhost:5000/v2/ {}
사설 레지스트리에 Push
이미지를 업로드하려면 이미지의 접두어를 레지스트리 컨테이너가 존재하는 호스트 아이피와
레지스트리 컨테이너 5000번 포트와 연결된 호스트의 포트로 설정해야 한다.
# docker tag imageName:0.0 000.000.000.000:5000/imagesName:0.0
위의 명령어는 IP를 접두어로 설정했지만,
별도 도메인이 있는경우,webnori:5000/imagesName:
예를들어 docker pull amouat/revealjs:latest 명령은
도커 허브 레지스트리의 amount/revealjs 저장소에 있는 latest 태그가 붙어 있는 이미지를 다운로드 한다.