logo
docker-build-from-error-getting-credentials.png

2023년 06월 13일

Docker Error : docker build from error getting credentials

docker
bug
develop

에러 내용


[+] Building 5.3s (3/3) FINISHED
  => [internal] load build definition from Dockerfile                                                               0.1s
  => => transferring dockerfile: 55B                                                                                0.0s
  => [internal] load .dockerignore                                                                                  0.0s
  => => transferring context: 2B                                                                                    0.0s
  => ERROR [internal] load metadata for docker.io/library/alpine:3.13.2                                             5.2s 
------ 
> [internal] load metadata for docker.io/library/alpine:3.13.2: 
------
failed to solve with frontend dockerfile.v0: failed to create LLB definition: rpc error: code = Unknown desc = error getting credentials - err: exit status 1, out: `error getting credentials - err: exit status 1, out: `Element nicht gefunden.``

해결 방안


도커 로그인하기

원인

도커 허브에서 FROM ~~-alpine:X.X.X를 불러와야 하는데, 로그인이 되어있지 않아 발생하는 문제이다.

해결

docker login을 통해 허브에 로그인하면 빌드 에러가 나지 않는다.

도커 로그인 실패 시

원인

이미 도커 인증 관련 정보가 남아있어, 로그인이 도지 않는 경우가 있기도 하다.

해결

이럴 경우에는 도커가 설치된 폴더에 config.json파일을 수정하여 auths내용과 credsStore내용을 지워주면 된다.

{
	"auths": {},
	"credsStore": ""
}

위와 같이 auths에 빈 오브젝트를, credsStore에 빈 문자열을 넣어주면 된다.

도커 로그인을 해도 안되는 경우

원인

내가 겪은 문제가 바로 이 문제였다.

도커 로그인을 했음에도 docker build 만 하면 자격 증명을 가져오지 못한다는 에러를 뱉어냈다.

구글에 검색 시 가장 먼저 나오는 깃허브 내용에서 해결책을 알려주었다.

WSL2: docker build - error getting credentials

처음에는 WSL2 (Windows Subsystem For Linux2), 윈도우 리눅스에서만 발생하는 문제인줄 알고 그냥 넘어갔는데, 자세히 읽어보니 나와 동일한 문제를 가지고 있었다.

단순한 내 추측으로는 Mac도 리눅스 기반이다보니, 맥의 특정 버전에서 이와 같은 문제가 발생한다고 생각한다.

해결

해결 방안으로는 내 도커에 미리 사용할 이미지를 불러오는 것이다.

docker pull ~~-alpine:X.X.X을 진행한 후 다시 빌드를 시도하면 정상적으로 실행되는 것을 볼 수 있다.

댓글