Dev./Docker

[Cloud] 배포 - Docker : Dockerhub

Ivan'show 2023. 8. 7.
728x90
반응형

도커 허브라고 들어봤는가?

도커 이미지를 띄워두고 마치 깃허브처럼 받아서 쓸 수 있게 해놓은 공간이다.

public 으로 레파지토리를 생성해둔다.

이후 콘솔에서

docker images
lion@likelion:~/dev_django_app$ docker images
REPOSITORY                              TAG         IMAGE ID       CREATED       SIZE
lion                                    0.3         3c97009ef945   2 hours ago   236MB
lion                                    0.2         addb2ef0fbf6   3 hours ago   176MB
lion                                    0.1         da34d62d6cc1   3 hours ago   176MB
...

Tag 를 확인하고 새롭게 도커 허브를 위한 태그를 생성해준다.

docker image tage lion:0.2 lion:0.2 ivaninitworld/lion:0.2

→ 이미지와 태그 = lion:0.2 → ivaninitworld/lion:0.2 로 묵어준다

docker images
lion@likelion:~/dev_django_app$ docker images
REPOSITORY           TAG         IMAGE ID       CREATED       SIZE
lion                 0.3         3c97009ef945   2 hours ago   236MB
ivaninitworld/lion   0.2         addb2ef0fbf6   3 hours ago   176MB
lion                 0.2         addb2ef0fbf6   3 hours ago   176MB
lion                 0.1         da34d62d6cc1   3 hours ago   176MB
...

같은 이미지 아이디로 repo 만 다르게 엮인 것을 확인

이제 이 내용을 docker hub 로 올리면

docker push ivaninitworld/lion:0.2

이제 pulll 명령어를 이용하여 이미지를 받아 사용할 수 있게 되었다.

위 내용을 NCP 를 통해서 진행할 수 있다.

NCP 에서 Container Registry 와 Object Storage → Bucket Management 를 설정하면 되는데, 간단히 비정형데이터인 오브젝트 파일을 버킷이라는 논리적 컨테이너에 담아 보관해 놓는 개념인것 같다.

내가 생성한적 없는 이름이 중복 필터에 걸리는 것을 보면 버킷과 오브젝트 스토리지는 클라우드 환경에서 리젼이라는 범주안에서 유니크한 값이 되어야 하는 것 같다.

버킷을 우선적으로 생성해 주고 컨테이너 레지스트리를 생성하면서 이름을 설정해준다. 이후 NCP 콘솔이 아닌 브라우저에서 마이페이지 → 계정관리 → 인증키 관리에서 API 인증키를 생성해준다. 이는 서버 콘솔에서 로그인하는데 사용된다.

 

이후부터는 똑같이 태그를 생성하고 푸시를 해주면 되는데 정보값은 컨테이너 레지스트리 쪽 이용가이드를 눌러보면 사용할 값들을 확인할 수 있다.

NCP 로 푸쉬한 내용들을 local 에서 다운받아가지고 Localhost 로 열어보기

 

 

 

 

 

728x90
반응형

댓글