본문 바로가기
DevOps/Docker

Docker hub에 내 이미지 공유하기

by Kallunar 2023. 12. 1.

github에 나의 코드를 공유하듯이
docker hub에 나의 이미지를 공유할 수 있다
그 방법을 간단히 정리해본다

 

docker hub에 접속해 로그인 한다.
(회원이 아니라면 먼저 회원가입 ㄱㄱ)

그 후 화면에 보이는 Create a Repository를 선택한다.

 

Repository 이름을 입력하고
목적에 따라 Public 또는 Private 선택한 뒤
Create 한다

무료 회원이라 private repository를
하나만 생성할 수 있다고 나오는데
더 필요하면 결제 태도를 보이도록 하자.

 

그러면 생성된 repository로 이동된다
아무 것도 없이 클-린한 레포

 

이제 github처럼 호기롭게 push 날려보는데
퉁명스럽게 그뭔씹 반응이 날아왔다

왜냐면 docker hub의 repo에 push 하려면
그 이미지 이름이 push 하려는 repo의 이름과 같아야 하기 때문이다.

하지만 내가 push 하려는 이미지의 이름은
현재 'node-test' 이다.

따라서 이름을 바꿔주거나
해당 repo 이름으로 다시 이미지를 생성해야 한다.

이름을 'node-test' 에서
repo 이름인 'kalluna/node-hello-world'로 바꿔주기 위해
다음과 같은 명령을 실행했다.

docker tag node-test kalluna/node-hello-world

사실 이렇게 해도 기존 이미지의 이름이 바뀌는게 아니라
기존 이미지의 이름만 바꿔 고대로 복사하는 것이므로
결과적으로 새로 생성하는 것과 차이는 없다

 

무튼 그렇게 repo의 이름과 동일하게 이미지를 만들었으면
다시 push 명령을 내려본다

잘 알아먹고 제대로 push를 완료했다

만약

denied: requested access to the resource is denied

이런 에러가 발생했다면
docker login 연결이 안 되어 있어서 그럴 것이므로
다음과 같이 로그인 연결을 해주고 다시 push를 해보자

 

push가 완료된 후
docker hub에서 확인해보면

잘 올라와 있다

난 tag를 붙인 기억이 없는데 웬 tag가 있나 싶은데
docker hub는 니가 안 붙이면 내가 붙인다를 시전한다고 한다
그래서 내가 tag를 지정 안하면 저렇게 자동으로 latest tag가 붙는다

이렇게 이미지가 public로 공유되면
docker pull을 통해 누구나 해당 이미지를 사용할 수 있게 된다

댓글