본문 바로가기

DevOps/Docker

도커 레지스트리 사용하기

-----

도커 컨테이너 이미지 생성 방법
1. 명령어를 이용한 이미지 생성

$ docker container commit CONTAINER NEW_IMAGE_REPO:TAG

2. Dockerfile을 이용한 이미지 생성

멀티스테이지 이미지 빌드

사설 레지스트리 구축

$ docker search registry
NAME                                DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
registry                            The Docker Registry 2.0 implementation for s…   0         [OK]

registry 컨테이너 이미지 다운로드
$ docker image pull registry:2

registry:2 컨테이너 실행
$ docker container run -d -p 5000:5000 --name registry2 registry:2

사설 레지스트리의 이미지 레포지토리 목록 조회
$ curl -X GET <http://localhost:5000/v2/_catalog>
{"repositories":[]}

사설 레지스트리로 이미지 업로드
사설 레지스트리에 이미지 업로드를 위한 이미지 이름(태그) 지정
$ docker image tag 기존이미지:태그 localhost:5000/이미지:태그

이미지 목록 확인
$ docker image ls

사설 레지스트리에 이미지 업로드
$ docker image push localhost:이미지/태그

사설 레지스트리의 이미지 레포지토리 목록 조회
$ curl -X GET <http://localhost:5000/v2/_catalog>
{"repositories":[myimg]}

이미지의 세부 목록(태그 목록) 확인
$ curl -X GET <http://localhost:5000/v2/이미지/tags/list>
$ curl -X GET <http://localhost:5000/v2/myimg/tags/list>
{"name":"myimg","tags":["0.1","0.2"]}

사설 레지스트리로부터 이미지 다운로드 전 이미지 삭제
$ docker image rm 이미지:태그
$ docker image rm localhost:5000/이미지:태그

사설 레지스트리로부터 이미지 다운로드
$ docker image pull localhost:5000/이미지:태그