• Home  / 
  • Docker
  •  /  Accéder au Google Container Registry sans le client gcloud

Accéder au Google Container Registry sans le client gcloud

By KrustyHack / last year

Schéma dauthentification du Google Container Registry

Le schéma d’authentification du Google Container Registry est simple à utiliser:

username: _token
password: {your_oauth_access_token}

S’authentifier sans gcloud depuis sont instance GCE

╭─root@krustyhack ~ 
╰─➤ GOOGLE_TOKEN=`curl --silent "http://metadata/computeMetadata/v1/instance/service-accounts/default/token" -H "Metadata-Flavor: Google" | cut -d'"' -f 4`
╭─root@krustyhack ~ 
╰─➤ docker login -e not@val.id -u _token -p "$GOOGLE_TOKEN" https://gcr.io

Vous pouvez également changer la localisation du repo privé comme http://{asia|eu|us|b}.gcr.io.

Et maintenant vous pouvez faire un docker pull normal sans passer par gcloud.

Ca ne fonctionne pas

Contrôlez les accès au scope Cloud Storage:

╭─root@krustyhack ~ 
╰─➤ curl --silent "http://metadata/computeMetadata/v1/instance/service-accounts/default/scopes" -H "Metadata-Flavor: Google"
https://www.googleapis.com/auth/cloud.useraccounts.readonly
https://www.googleapis.com/auth/devstorage.read_only
https://www.googleapis.com/auth/logging.write
https://www.googleapis.com/auth/monitoring.write

« docker pull » requiert « devstorage.read_only » mais « docker push » requiert « devstorage.read_write ».

Source: https://github.com/mattmoor

Leave a comment: