Installer l'image Docker de la Google Cloud CLI

L'image Docker de la Google Cloud CLI vous permet d'extraire une version spécifique de gcloud CLI en tant qu'image Docker à partir d'Artifact Registry et d'exécuter rapidement des commandes Google Cloud CLI dans un conteneur isolé et correctement configuré.

L'image Docker de la Google Cloud CLI correspond à la gcloud CLI installée sur une image Debian ou Alpine. L'image Docker est hébergée sur Artifact Registry avec le nom de dépôt suivant : gcr.io/google.com/cloudsdktool/google-cloud-cli. Les images sont également disponibles à l'aide des dépôts us.gcr.io, eu.gcr.io et asia.gcr.io.

Options d'images Docker

Il existe cinq images Docker de la Google Cloud CLI: récentes, Slim, émulateurs, debian_component_based et alpine. Vous pouvez spécifier votre préférence en utilisant le tag approprié après le nom du dépôt hôte:

  • :latest, :VERSION: image volumineuse (basée sur Debian) avec des composants supplémentaires préinstallés.
  • :slim, :VERSION-slim: image plus petite (basée sur Debian) sans composants préinstallés.
  • :emulators, :VERSION-emulators: image plus petite (basée sur Debian) avec des composants d'émulateur préinstallés.
  • :alpine, :VERSION-alpine: image la plus petite (basée sur Alpine) sans composant supplémentaire installé. Cette image est compatible avec linux/arm.
  • :debian_component_based, :VERSION-debian_component_based: basé sur Debian avec tous les composants. Contrairement à :latest qui utilisait des packages deb, cette image utilise le gestionnaire de composants pour installer les composants. Cette image est compatible avec linux/arm.

Installer une image Docker spécifiée

  1. Pour utiliser l'image de la dernière version de Google Cloud CLI, gcr.io/google.com/cloudsdktool/google-cloud-cli:latest, extrayez-la d'Artifact Registry en exécutant la commande suivante:

    docker pull gcr.io/google.com/cloudsdktool/google-cloud-cli:latest
    
  2. Si vous avez extrait la version la plus récente, vérifiez l'installation en exécutant la commande suivante :

    docker run --rm gcr.io/google.com/cloudsdktool/google-cloud-cli:latest gcloud version
    

    Si vous avez extrait une version spécifique, vérifiez l'installation en exécutant une commande semblable à l'exemple suivant :

    docker run --rm gcr.io/google.com/cloudsdktool/google-cloud-cli:<release_version> gcloud version
    
  3. Authentifiez-vous auprès de la Google Cloud CLI en exécutant la commande suivante:

    docker run -ti --name gcloud-config gcr.io/google.com/cloudsdktool/google-cloud-cli gcloud auth login
    

    Une fois l'authentification effectuée, les identifiants sont conservés dans le volume de gcloud-config container.

  4. Pour vérifier, répertoriez les instances Compute utilisant ces identifiants en exécutant le conteneur avec --volumes-from :

    docker run --rm --volumes-from gcloud-config gcr.io/google.com/cloudsdktool/google-cloud-cli gcloud compute instances list --project your_project
    

Installer des composants supplémentaires

Par défaut, tous les composants de la Google Cloud CLI sont installés sur les images les plus récentes (gcr.io/google.com/cloudsdktool/google-cloud-cli:latest et gcr.io/google.com/cloudsdktool/google-cloud-cli:VERSION).

Toutefois, les images gcr.io/google.com/cloudsdktool/google-cloud-cli:slim, gcr.io/google.com/cloudsdktool/google-cloud-cli:emulators et gcr.io/google.com/cloudsdktool/google-cloud-cli:alpine ne sont pas livrées avec des composants supplémentaires préinstallés.

Pour installer des composants supplémentaires pour des images basées sur Alpine, créez un Dockerfile utilisant l'image Google Cloud CLI comme image de base. Par exemple, pour ajouter les composants kubectl et app-engine-java, créez un fichier Dockerfile se présentant comme suit:

FROM gcr.io/google.com/cloudsdktool/google-cloud-cli:alpine
RUN apk --update-cache add openjdk7-jre
RUN gcloud components install app-engine-java kubectl

Si openjdk7-jre ne fonctionne pas, essayez openjdk8-jre.

Exécutez ensuite la commande ci-dessous :

docker build -t my-cloud-sdk-docker:alpine .

Installer des versions spécifiques de la Google Cloud CLI

Pour installer des versions spécifiques de Google Cloud CLI, indiquez la version de gcloud CLI que vous préférez lorsque vous exécutez la commande docker build:

docker build -t my-cloud-sdk-docker:alpine --build-arg CLOUD_SDK_VERSION=<release_version> .

Vérifiez la dernière version de la Google Cloud CLI et toutes les versions précédentes de la Google Cloud CLI.