Huny's Dev Blog

huny.dev
Docker ECR 사용 시 no basic auth credentials 오류 원인과 해결법

Docker ECR 사용 시 no basic auth credentials 오류 원인과 해결법

aws configure와 docker login이 정상인데도 docker pull 또는 docker push 시no basic auth credentials 오류가 발생할 수 있다. 이 글에서는 AWS 공식 문서에서 다루는 일반적인 원인 외에,sudо 사용으로 인한 인증 문제를 중심으로 정리한다.

Hun Jang
Hun Jang Oct 13, 2025

1. 기본적인 원인

AWS 공식 문서(ECR 오류 가이드)에서는

다음과 같은 상황을 일반적인 원인으로 설명한다.

  • ECR 리포지토리 URI가 잘못됨
  • 로그인 토큰 만료
  • 권한 부족 (HTTP 403)

이 경우 문서의 가이드에 따라 재인증(aws ecr get-login-password)을 수행하면 해결된다.

2. 그 외의 원인 — sudo 사용 시 인증 문제

문제는 docker login은 정상인데 docker pull이나 docker push에서만 no basic auth credentials가 반복될 때 발생한다.

이 경우 Docker 명령을 실행하는 사용자 권한이 달라졌을 가능성이 높다.

상황 예시

  • docker login은 일반 사용자 계정으로 실행
  • docker pullsudo docker pull로 실행

이때 sudoroot 사용자로 명령을 실행하기 때문에,

로그인 시 저장된 인증 정보(~/.docker/config.json)와 다른 사용자의 환경을 사용하게 된다.

그 결과 인증이 누락되어 no basic auth credentials 오류가 발생한다.

3. 해결 방법

방법 1: 모든 Docker 명령에 sudo를 일관되게 사용

단, 매번 sudo를 쓰는 것은 번거롭다.

방법 2: sudo 없이 Docker를 실행하도록 설정

이후 docker login, docker pull, docker push 명령을 모두 sudo 없이 실행할 수 있다.

AWS CLI의 자격 증명(~/.aws/credentials)도 정상적으로 인식된다.

요약:

  • no basic auth credentials 오류는 단순 인증 만료 외에도 sudo 사용으로 인해 발생할 수 있다.
  • 해결책은 sudo 없이 Docker를 사용할 수 있도록 현재 사용자를 docker 그룹에 추가하는 것이다.
  • 이 설정 이후에는 AWS CLI와 Docker 인증 체계가 동일 사용자 환경에서 동작하여 문제를 방지할 수 있다.
 

You might also like

BlogPro logo
Made with BlogPro