도커 로그인: '스터브가 잘못된 데이터를 수신했습니다' 자격 증명을 저장하는 중 오류가 발생했습니다.
먼저 AWS-CLI를 설치하고 이미 "AWS configure"를 사용하여 비밀키를 설정했고 "Docker login" 명령을 사용하여 로그인을 했고 Get-ECR Login Command를 입력하면 성공했습니다.그것은 효과가 있고 나를 위해 결과를 돌려줍니다.
하지만 명령을 사용하려고 하면 다음과 같습니다.
(Get-ECRLoginCommand).Password | docker login --username AWS --password-stdin 837859123533.dkr.ecr.ap-east-1.amazonaws.com/spring-boot
다음과 같은 오류가 발생했습니다.
자격 증명 저장 오류: 자격 증명 저장 오류 - err: 종료 상태 1, out:
error storing credentials - err: exit status 1, out:
스텁이 잘못된 데이터를 받았습니다.'
편집: Ethan Davis의 솔루션도 참조하십시오.
C:\Program Files\Docker\Docker\Resources\bin\docker-credential-desktop.exe와 C:\Program Files\Docker\Resources\bin\docker-credential-wincredential-wincred를 제거하는 것을 발견했습니다.exe는 나를 위해 일했습니다. – Ethan Davis '20년 9월 29일 18:10
원본:조엘스터의 코멘트로 연결된 해결책이 저에게 효과가 있었습니다.
한 가지 빠른 해결 방법은 .docker\config.json 파일을 수정하는 것입니다.도커가 파일 시스템을 사용하여 토큰을 저장하도록 다음 행을 제거합니다.
"credsStore": "wincred"
파일을 열었습니다.c:\Users\sashoalm\.docker\config.json
, credsStore 키를 삭제했습니다.그 후 효과는 다음과 같습니다.
type pass.txt | docker login -u AWS --password-stdin https://123123.dkr.ecr.us-west-1.amazonaws.com
그 결과는 다음과 같습니다.
WARNING! Your password will be stored unencrypted in C:\Users\sashoalm\.docker\config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
오늘 현재까지도 이 문제는 여전히 지속되고 있습니다.제가 발견한 것은 아래와 같습니다.
1.) SSO를 인증에 사용하는 동안 이 문제가 나타납니다.AWS용 Azure SSO를 사용하고 있습니다. (https://www.npmjs.com/package/aws-azure-login)
2.) 이유는- SSO에서 반환되는 토큰이 충분히 길기 때문입니다(2550자 이상). 반면 윈도우즈 자격 증명 관리자는 이러한 긴 토큰을 지원하지 않습니다.
3.) ECR 자격 증명 도우미(https://github.com/awslabs/amazon-ecr-credential-helper), 를 사용하면 SSO에서도 작동하지 않는 것 같습니다. https://github.com/awslabs/amazon-ecr-credential-helper/issues/229
하지만 저는 해결책으로 이 단계를 따랐고 저는 Windows를 사용하고 있습니다.
1.) 제거/이름 변경"docker-credential-wincred.exe"
파일 위치:"C:\Program Files\Docker\Docker\resources\bin"
디렉토리 입니다.
2.) 를 제거"credStore"
&"credsStore"
도커 구성()의 키C:\Users\PROFILE_NAME\.docker\config.json
).
다음과 같은 답변이 있습니다.
WARNING! Your password will be stored unencrypted in C:\Users\sandeep.kumar\.docker\config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
- 이 문제를 해결하기 위해 티켓 오픈
https://github.com/danieljoos/wincred/issues/18
https://github.com/aws/aws-cli/issues/5636
@Ethan Davis가 언급했듯이 다음 파일을 제거하는 것이 도움이 되었습니다.
C:\Program Files\Docker\Docker\resources\bin\docker-credential-desktop.exe
C:\Program Files\Docker\Docker\resources\bin\docker-credential-wincred.exe
다른 스레드에서 - Mac OS X 솔루션의 도커 로그인 실패가 Mac OS에서 도움이 됩니다.mv ~/.docker ~/.docker.bak
두 가지 솔루션 모두 효과가 있었습니다. 파일 C: \프로그램 파일 \Docker \Docker \Resources \ bin \Docker \credential-desktop.exe와 C: \프로그램 파일 \Docker \Docker \Resources \ bin \docker \credential-wincredential.{"credsStore"를 실행한 후 삭제합니다. "..."} 그럼 나의 구조는 config.json 파일에서 다음과 같습니다.
{
"auths": {
"Account_AWS.dkr.ecr.Region_AWS.amazonaws.com": {
"auth": "My token"
}
},
"HttpHeaders": {
"User-Agent": "Docker-Client / 19.03.13 (windows)"
},
"stackOrchestrator": "swarm"
}
config.json 파일의 "credsStore": "desktop"을 방금 삭제하여 수정했습니다.
의 Docker 의 로 로 의 amazon-ecr-credential-helper
가 나란히 설치되어 있습니다.
그래서 당신은 단지 당신의 컴퓨터를 수정해서 활성화하기만 하면 됩니다.config.json
일,된에서 %userprofile%/.docker/config.json
아니면~/.docker/config.json
.
합니다의 합니다.config.json
다음 위치:
{
"credsStore": "ecr-login"
}
또는 내용을 다음과 같이 설정할 수도 있습니다.
{
"auths": {
"XXXXXXXXXXXX.dkr.ecr.ap-east-1.amazonaws.com": {
"auth": ""
}
}
}
(여기서 XXXXXXXXXXX는 AWS 계정 번호, ap-east-1은 선택 지역, auth는 비워 둡니다.)
, 을 반복하면,docker login --username AWS XXXXXXXXXXXX.dkr.ecr.ap-east-1.amazonaws.com
그럼 이번엔 성공할 겁니다
자세한 설명은 아마존의 ecr-credential-helper 페이지에서 확인할 수 있습니다.
것도 돼서 Helper를 했으므로 도 [ Amazon ECR Docker Credential Helper ] 가 했는데 를 가 했는데 docker login
조금도.
choco install amazon-ecr-credential-helper
도커-credential-ecr-login 바이너리를 PATH에 두고 ~/.docker/config.json 파일의 내용을 다음과 같이 설정합니다.
{
"credsStore": "ecr-login"
}
공식 레포 : https://github.com/awslabs/amazon-ecr-credential-helper
편집:에서 : Windows(윈도우) 을 할 수 .amazon-ecr-credential-helper
여기 https://github.com/awslabs/amazon-ecr-credential-helper/releases 에서 여기에 설명된 대로 설치합니다. https://pulseadvancedmedia.co.uk/aws/setting-up-aws-ecr-credential-helper-in-windows/
언급URL : https://stackoverflow.com/questions/60807697/docker-login-error-storing-credentials-the-stub-received-bad-data
'programing' 카테고리의 다른 글
regex, 일치하지 않는 경우 처리 사례에 대해 첫 번째 일치가 있는 문자열 반환 (0) | 2023.09.09 |
---|---|
사용자를 변경하려면 어떻게 해야 합니까?(cmd, mariadb) (0) | 2023.09.09 |
오류: 스키마 유효성 검사에 실패하고 다음 오류가 발생했습니다. 데이터 경로 ""에 추가 속성이 없어야 합니다(프로젝트). (0) | 2023.09.09 |
부모 레코드별 최신 자식 레코드(조건 포함) 찾기 (0) | 2023.09.09 |
HTML에서 PDF를 생성하기 위해 wkhtmltopdf 호출 (0) | 2023.09.09 |