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 gcloud CLI en tant qu'image Docker Artifact Registry et exécuter rapidement Commandes Google Cloud CLI dans un conteneur isolé et correctement configuré.

L'image Docker de la Google Cloud CLI est la gcloud CLI installée en haut d'une image Debian ou Alpine. L'image Docker est hébergée 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 six images Docker Google Cloud CLI: stable, dernière, fine, émulateurs, debian_component_based et alpine. Vous pouvez indiquer vos préférences à l'aide des le tag approprié après le nom du dépôt hôte:

  • :stable, :VERSION-stable: image par défaut (basée sur Debian) avec une image l'installation de gcloud.
  • :latest, :VERSION: image volumineuse (basée sur Debian) avec des composants supplémentaires préinstallé.
  • :slim, :VERSION-slim: image plus petite (basée sur Debian) sans composant préinstallé.
  • :emulators, :VERSION-emulators: image plus petite (basée sur Debian) avec émulateur pré-installés.
  • :alpine, :VERSION-alpine: image la plus petite (basée sur les Alpes) sans ajout d'images installés. Cette image prend en charge linux/arm.
  • :debian_component_based, :VERSION-debian_component_based: basés 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 prend en charge linux/arm.

Installer une image Docker spécifiée

  1. Pour utiliser l'image de la version stable de la Google Cloud CLI, gcr.io/google.com/cloudsdktool/google-cloud-cli:stable, et les extraire d'Artifact Registry en exécutant la commande suivante:

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

    docker run --rm gcr.io/google.com/cloudsdktool/google-cloud-cli:stable 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:stable-<release_version> gcloud version
    
  3. Authentifiez-vous à 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, les images stables (gcr.io/google.com/cloudsdktool/google-cloud-cli:stable) et gcr.io/google.com/cloudsdktool/google-cloud-cli:stable-VERSION) n'ont pas les composants installés autres que bq et gsutil. Pour installer d'autres de l'image stable, vous pouvez cloner cloud-sdk-docker Répertoire GitHub et utilisez la commande docker build pour créer l'image Docker :stable du fichier Docker avec le INSTALL_COMPONENTS . Par exemple, pour ajouter des composants datastore-emulator:

# clone the GitHub docker directory 
$ git clone https://github.com/GoogleCloudPlatform/cloud-sdk-docker.git
$ docker build --build-arg CLOUD_SDK_VERSION=<release_version> \
   --build-arg INSTALL_COMPONENTS="google-cloud-cli-datastore-emulator=<release_version>-0 \
   -t my-cloud-sdk-docker:stable .

Pour installer des composants supplémentaires pour les images basées sur Alpine, créez un Dockerfile qui utilise l'image Google Cloud CLI comme image de base. Par exemple, pour ajouter les composants kubectl et app-engine-java, créez un Dockerfile ressemblant à les éléments suivants:

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 Google Cloud CLI

Pour installer des versions spécifiques de la Google Cloud CLI, indiquez vos préférences Version de la gcloud CLI lors de l'exécution de la commande docker build:

docker build -t my-cloud-sdk-docker:stable --build-arg CLOUD_SDK_VERSION=stable-<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.