728x90

개요

 

docker hub에 이미지를 push할 때 "requested access to the resource is denied" 에러가 발생했습니다.

 

문제 이유

denied: requested access to the resource is denied" 에러가 발생한 이유는 push하려는 Docker Hub 레포지토리소유자가 아니라서 해당 레포지토리에 대한 push 권한이 없기 때문입니다.

 

이 경우에는:

  1. @@/node-hello-world로 push를 시도했지만
  2. @@는 다른 사용자의 계정이므로
  3. 해당 레포지토리에 대한 push 권한이 없어 거부된 것입니다.

Docker Hub에 이미지를 Push하려면 해당 레포지토레에 권한이 존재해야합니다. 

 

문제 해결 방안

해결하려면:

docker push [your-username]/node-hello-world
  • 1. 자신의 Docker Hub 계정을 사용해야 합니다.
docker login

 

또는 먼저 Docker Hub에 로그인이 필요합니다

 

이미지를 push하기 전에는 반드시 자신의 Docker Hub 계정 네임스페이스를 사용해야 합니다.

 

Docker Hub의 네임스페이스란❓

Docker Hub의 네임스페이스이미지들을 구분하고 관리하기 위한 고유한 식별자 공간입니다. 주로 사용자명이나 조직명이 네임스페이스가 되며, Docker 이미지의 이름 구조에서 '/'앞에 오는 부분입니다.

 

[namespace]/[repository-name]:[tag]
ubuntu/nginx:latest    # ubuntu는 네임스페이스
nginx:latest          # 공식 이미지는 네임스페이스 생략
myname/app:1.0        # myname이 네임스페이스

 

네임스페이스의 특징

1. 고유성

  • 각 Docker Hub 계정은 고유한 네임스페이스를 가짐

2. 권한 관리

  • 네임스페이스 소유자만 해당 네임스페이스에 이미지를 push 가능

3. 이미지 구분

  • 같은 이름의 이미지 다른 네임스페이스로 구분 가능