Докл gcloud отправляет результаты в «отказано: обмен токеном не удался для проекта« gcp-project-id-example ».» - PullRequest
0 голосов
/ 08 июня 2018

Я пробежал gcloud auth login, gcloud auth configure-docker, gcloud components install docker-credential-gcr, gcloud config set project gcp-project-id-example.

Я загружал этот репозиторий ранее, поэтому я немного удивлен, что он не работает сейчас?Я аутентифицировался с gcloud auth login, и у моего пользователя есть полные права редактора.

sudo gcloud docker -- push eu.gcr.io/gcp-project-id-example/pipelinebuild:latest
WARNING: `gcloud docker` will not be supported for Docker client versions above 18.03.

As an alternative, use `gcloud auth configure-docker` to configure `docker` to
use `gcloud` as a credential helper, then use `docker` as you would for non-GCR
registries, e.g. `docker pull gcr.io/project-id/my-image`. Add
`--verbosity=error` to silence this warning: `gcloud docker
--verbosity=error -- pull gcr.io/project-id/my-image`.

See: https://cloud.google.com/container-registry/docs/support/deprecation-notices#gcloud-docker

The push refers to repository [eu.gcr.io/gcp-project-id-example/pipelinebuild]
09a1efc2708d: Preparing
484c62332bc0: Preparing
737446294222: Preparing
5330921097a0: Preparing
898d09fcad4e: Preparing
8ebe2c7c93e3: Waiting
2d360789868b: Waiting
43c7850e5ceb: Waiting
212ad79ba733: Waiting
b12c0a65bf50: Waiting
2ec89235b54b: Waiting
770a49082d40: Waiting
2a4ee56ebd9d: Waiting
f38582ca1d15: Waiting
3cc68fcb53a4: Waiting
577d10d964a3: Waiting
96e5efb05969: Waiting
aae94198c5bb: Waiting
9e5b0f110abc: Waiting
bddf843523ce: Waiting
6ab9447934c9: Waiting
9cc1209e0dce: Waiting
072f13fb321e: Waiting
0926f7bf84b3: Waiting
cdb414de0edf: Waiting
eceffb9b1d52: Waiting
6219baf3e782: Waiting
c9189dccc6a7: Waiting
93715b5af77e: Waiting
032237575276: Waiting
5f70bf18a086: Waiting
0d81735d8272: Waiting
982549bd6b32: Waiting
8698b31c92d5: Waiting
denied: Token exchange failed for project 'gcp-project-id-example'. Caller does not have permission 'storage.buckets.get'. To configure permissions, follow instructions at: https://cloud.google.com/container-registry/docs/access-control

Я также пытался:

docker login -u _json_key --password-stdin https://eu.gcr.io < aysc.json:

WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

Но все равно получаю такое же поведение с gcloud docker -- push ... или только с docker push ....


Я только что создал совершенно новый проект GCP с нуля, и я все еще получаю то же самоеповедение.Я думаю, что-то должно быть перенастроено в моей системе.

Почему я получаю эту ошибку?

Ответы [ 6 ]

0 голосов
/ 22 апреля 2019

Запустите эту команду, чтобы снова активировать токен -

gcloud auth print-access-token | docker login -u oauth2accesstoken --password-stdin https://gcr.io

вежливость

0 голосов
/ 06 января 2019

Когда вы запускаете gcloud auth configure-docker как обычный пользователь, он сохраняет файл конфигурации в ~/.docker/config.json - и этот файл впоследствии не используется при запуске через пользователя root или sudo ...

* 1006.* Так что легко обойти это sudo -u $USER docker push gcr.io/example/example:latest
0 голосов
/ 04 сентября 2018

После создания и загрузки keyfile.json я экспортирую GOOGLE_APPLICATION_CREDENTIALS в местоположение файла

export GOOGLE_APPLICATION_CREDENTIALS=/var/lib/jenkins/gcp/keyfile.json

, это то, что я сделал для меня:

docker login -u _json_key -p "`cat ${GOOGLE_APPLICATION_CREDENTIALS}`" https://gcr.io

надеюсь, что этопомогает

0 голосов
/ 16 июля 2018

Перед запуском входа в Docker попробуйте:

gcloud auth activate-service-account --key-file new-service-account-credentials.json 

Это нужно сделать только один раз.

0 голосов
/ 02 июля 2018

Я сомневаюсь, что проблема с sudo.Я был в состоянии сделать "толчок докера" к gcr.io/some-registry/some-image без использования sudo.Затем, внезапно, я не смог выполнить ту же команду «docker push» и получил «отказано: обмен токеном не удался для my-gcp-project.

0 голосов
/ 08 июня 2018

Кажется, есть некоторые проблемы с использованием sudo (который мне нужен для доступа к докеру на моей машине).

Работал нормально при запуске напрямую из root ... Так что, вероятно, ошибка.

Я думаю, что это связано с кэшем предыдущей учетной записи службы с тем же именем (см. Здесь https://github.com/kubernetes/kubernetes/issues/34395).

...