본문 바로가기
Linux

Docker registry setup

by AsCE_hyunseung 2019. 7. 8.

Docker registry 로컬에서 구축

docker에 대한 이해가 있다는 전제하에 wiki화를 하려고 한다.

Ubuntu 18.04 LTS

Docker version 18.09.6, build 481bc77

Docker registry

  • Docker 이미지를 저장하고 배포 할 수있는 상태 비 저장 및 확장 성이 뛰어난 서버 측 응용 프로그램
  • 프라이빗하게 이미지를 공유할 수 있는 서버 (Private Storage)
  • open-source by Apache license

docker hub? registry?

  • hub에서의 public repository는 무제한이지만 private repository는 1개만 무료

  • 같은 기능을 하는 registry서버를 구현해보자.

    docker pull registry

  • registry 이미지를 가져온다

    docker run -dit --name docker-registry -p 5000:5000 registry

  • registry 실행

    --name

    • 이름 지정 플래그

    -p

    • 포트 매핑

    docker ps -a

  • 컨테이너가 잘 실행되고 있는지 확인

  • 아래 스크린샷과 같이 확인할 수 있다.

docker pull hello-world
docker tag hello-world localhost:5000/hello-world
  • hello-world 이미지를 가져오고 localhost:5000/hello-world 태그를 붙여준다.
  • 앞에 registry 주소를 붙여줘야하기 때문에 localhost:5000 태그를 붙여주었다. (registry 포트를 5000번에 매핑했다)
  • registry는 ip접속을 허용하지 않기 떄문에 hostname을 넣어줘야한다.

  • /etc/hosts 파일을 변경해주자

    docker push localhost:5000/hello-world

  • registry에 push한다.

이제 test를 해보자

docker registry에 push

Dockerfile

FROM ubuntu:18.04
MAINTAINER hyunseung AsCE_<leehs1222@gmail.com>
CMD echo 'Hello, Docker!'
  • Hello, Docker 텍스트를 출력하는 간단한 이미지

    docker build -t 이름 .

  • Dockerfile을 빌드해서 이미지를 만들었다.

-t

  • 이미지 이름 지정

    docker images
    docker push localhost:5000/hello_docker

  • 이미지들을 확인할 수 있다.

  • 아래 스크린샷처럼 이미지가 업로드 되어있는걸 확인할 수 있다.

docker registry에서 pull

  • 로컬 docker server에 동일한 이미지가 있으면 테스트가 안되니 삭제를 먼저 한다.

  • docker ps -a, docker images 명령어로 먼저 확인을 한다.

    docker rm CONTAINER_ID
    docker rmi IMAGE_ID

-f

  • force 플래그

    sudo docker run localhost:5000/hello_docker

  • 필자의 경우에는 이미 존재하는 이미 존재하는 이미지라서 Already exists라고 로그가 남겨졌지만 정상적인 경우에는 Download complete라고 로그가 남을 것이다.

  • run 명령어를 돌린 다음에 정상적으로 Hello, Docker!라는 텍스트가 남은 것을 알 수 있다.

'Linux' 카테고리의 다른 글

Ubuntu 18.04에서 기본 인프라 설치하기  (0) 2019.10.25
에러 solve  (0) 2019.09.21
Grafana, Prometheus, node-exporter install guide  (0) 2019.07.08
CentOS7에 APM설치  (0) 2018.11.05
Xfce Ubuntu(xUbuntu) 설치  (0) 2018.10.27