gcloud 인터페이스를 사용하지 않고 GitLab CI에서 Google Container Registry를 사용하려고합니다. "는 JSON 키 파일을 사용"섹션에서 여기에 나열된 문서를 사용json 자격 증명을 수락하기 위해 Google Container Registry를 얻으려면 어떻게해야합니까?
는 : 나는했습니다
{
"type": "service_account",
"project_id": "REDACTED",
"private_key_id": "REDACTED",
"private_key": "-----BEGIN PRIVATE KEY-----\nBIGLONGLISTOFGARBLEDTEXTNSTUFF\n-----END PRIVATE KEY-----\n",
"client_email": "[email protected]",
"client_id": "NUMBERSNUMBERSNUMBERS",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/somethingsomething%40developer.gserviceaccount.com"
}
: https://cloud.google.com/container-registry/docs/advanced-authentication
내 서비스 계정 자격 증명이 JSON 파일로 파일을 다운로드 한 다음 에러를 산출
docker login -u _json_key -p "$(cat google_cred.json)" https://gcr.io
: 다음 지정된 명령을 사용하여 로그인 시도
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
docker login https://gcr.io
은 사용자 이름/암호 대화 형 프롬프트를 제공하므로 내 로컬 도커 설치시 문제가되지 않습니다.
누락 된 것이 있습니까?
'고정 표시기의 ps' 또는 기타 고정 표시기 명령은 고정 표시기 로그인에 https '를 포함하여, 잘 작동 : // gcr.io'; 후자는 사용자 이름/암호 프롬프트를 표시하지만 그 시점에서 json 파일을 자격 증명으로 제공 할 방법이 없습니다. JSON 자격 증명 파일의 형식 (모든 특수 문자와 줄 바꿈 포함)과 관련이 있다고 생각합니다. 그러나 확실히 말할 수는 없으며 실제로 진단 할 방법이 없습니다. –
당신은 어떤 버전의 도커를 사용하고 있습니까? 나는 정확하게 똑같이 시도했고 나는 JSON 키 파일을 사용하는 데 문제가 없다. 도커 데몬 로그 파일에 뭐가 있는지 확인 했니? 데몬의 디버그 모드를 활성화하여 자세한 정보를 얻을 수도 있습니다. – Wei
'Docker version 1.12.3, build 6b644ec'. 로그 파일을 확인하지 않았습니다. 나는 그런 일이 존재한다는 것을 몰랐다. : D –