마지막으로 harbor 서버에 docker image를 push 하고 pull 하는 예제를 다뤄보겠습니다.

Harbor 서버 설치에 대해서는 이전 가이드를 참고해주세요.

 

 


 

1. docker 클라이언트 설정에 접속할 harbor 서버 정보 등록

docker를 사용할 때 별도의 harbor 서버에 접근하기 위해서는 insecure-registries 등록이 필요합니다.

docker 설정은 보안을 위해 docker hub가 아닌 registry를 insecure로 판단하고 있습니다.
때문에 private registry 서버에 접근하기 위해서는 insecure-registries에 새로 구성한 harbor 서버 주소를 등록해야 합니다.

insecure-registries 설정 방법에 대해 ubuntu 리눅스 환경과 WSL에 docker desktop 환경을 예시로 설명합니다.

 

1. harbor 서버 확인

* START -> 1) Project -> 생성한 2) my_ubuntu 선택 -> 3) Repositories 탭 -> 4) 아무것도 없음 확인

 

 

2. docker image 샘플 준비

docker image를 harbor 서버에 연동하는 실습을 위해서 오피셜 ubuntu:22.04 이미지를 다운로드하여 보겠습니다.

  • $ sudo docker pull ubuntu:22.04
  • $ sudo docker images

 

 

3. docker 이미지에 새로운 tag 적용

새로운 harbor 서버에 docker image 등록을 위해서는 tag 적용이 필요합니다.

  • $ sudo docker images
  • ubuntu:22.04의 <IMAGE_ID> 확인 -> 2dc39ba059dc
  • $ sudo docker tag 2dc39ba059dc harbor.ID.synology.me/my_ubuntu/test_ubuntu:22.04
    설명) sudo docker tag <IMAGE_ID> <HARBOR_URL>/<PROJECT>/<IMAGE_NAME>:<TAG>
  • ubuntu:22.04의 IMAGE_ID로 harbor.ID.synology.me/my_ubuntu/test_ubuntu:22.04 태그 적용됨

 

 

 

tip. docker login은 이미 되어 있다는 가정 하에 하기 테스트에서는 명령어를 생략합니다.
      sudo docker login -u test harbor.ID.synology.me

 

4. docker 이미지에 harbor 서버에 push (업로드)

새로운 적용한 tag의 image를 harbor 서버에 push 해 보겠습니다.

  • $ sudo docker push harbor.ID.synology.me/my_ubuntu/test_ubuntu:22.04
    설명) $ sudo docker push <REPOSITORY>:<TAG>

 

 

5. harbor 서버에서 push 된 이미지 확인

* START -> Project -> 생성한 my_ubuntu 선택 -> Repositories 탭 -> 새로고침 -> my_ubuntu/test_ubuntu 표시됨

-> my_ubuntu/test_ubuntu 선택 -> image 상세 정보 확인됨

 

 

6. harbor 서버에서 docker image pull (다운로드)

테스트를 진행하기 전에, 이전에 존재하는 image를 먼저 삭제하고 진행하겠습니다.
(삭제하지 않으면, harbor 서버에 올린 이미지가 이미 존재하기 때문에 다운로드 스킵됨)

  • $ sudo docker images
  • ubuntu:22.04의 <IMAGE_ID> 확인 -> 2dc39ba059dc
  • $ sudo docker image rm 2dc39ba059dc
    설명) sudo docker image rm <IMAGE_ID>
  • $ sudo docker images

 

이제 harbor 서버에 등록된 docker image를 다운로드하여 보겠습니다.

  • $ sudo docker pull harbor.ID.synology.me/my_ubuntu/test_ubuntu:22.04
    설명) sudo docker pull <REGISTRY>/<PROJECT>/<IMAGE_NAME>:<TAG>
  • harbor 서버에서 image 다운로드 확인 

 

다운로드 후 harbor 서버의 log를 확인해 보면 docker pull로 받아간 흔적을 확인할 수 있습니다.

 

 

이상으로 harbor를 이용해 비공개 private registry 서버를 세팅 및 관리하고
docker image에 tag 적용해서 harbor 서버로 image를 push 하고 pull 해보는 실습을 마쳤습니다.

private registry 서버의 필요성으로 harbor 설치 가이드를 찾아보신 분들께서는 
이미 docker나 리눅스 환경에서 초보가 아니실 거라 생각됩니다.

어렵지 않은 내용들 정리해두는 차원에서 가이드를 남겨보았으니, 참고가 되셨으면 합니다.

 

END

 

PS. 본 포스팅이 도움이 되셨다면 소중한 리플로 후기 공유해주세요. 광고 클릭도 큰 도움이 됩니다.

 

+ Recent posts