Installazione dell'immagine Docker di Google Cloud CLI

L'immagine Docker di Google Cloud CLI ti consente di eseguire il pull di una versione specifica gcloud CLI come immagine Docker Artifact Registry ed eseguire rapidamente Comandi Google Cloud CLI in un container isolato e configurato correttamente.

L'immagine Docker di Google Cloud CLI è gcloud CLI installata in cima a un'immagine Debian o alpina. L'immagine Docker è ospitata Artifact Registry con il seguente nome di repository: gcr.io/google.com/cloudsdktool/google-cloud-cli. Le immagini sono disponibili anche utilizzando i repository us.gcr.io, eu.gcr.io e asia.gcr.io.

Opzioni immagine Docker

Esistono sei immagini Docker di Google Cloud CLI: stabile, più recente, slim, emulatori debian_component_based e alpino. Puoi specificare la tua preferenza utilizzando il metodo tag appropriato dopo il nome del repository host:

  • :stable, :VERSION-stable: immagine predefinita (basata su Debian) con uno standard mediante l'installazione di gcloud.
  • :latest, :VERSION: immagine grande (basata su Debian) con componenti aggiuntivi sono preinstallate.
  • :slim, :VERSION-slim: immagine più piccola (basata su Debian) senza componenti sono preinstallate.
  • :emulators, :VERSION-emulators: immagine più piccola (basata su Debian) con emulatore sono preinstallati.
  • :alpine, :VERSION-alpine: immagine più piccola (basata sulle Alpi) senza ulteriori componenti aggiuntivi installati. Questa immagine supporta Linux/arm.
  • :debian_component_based, :VERSION-debian_component_based: basati su Debian con tutti i componenti. A differenza di :latest che utilizzava pacchetti deb, questa immagine utilizza il gestore dei componenti per installare i componenti. Questa immagine supporta Linux/arm.

Installazione di un'immagine Docker specificata

  1. Per utilizzare l'immagine della release stabile di Google Cloud CLI, gcr.io/google.com/cloudsdktool/google-cloud-cli:stable, esegui il pull da Artifact Registry eseguendo questo comando:

    docker pull gcr.io/google.com/cloudsdktool/google-cloud-cli:stable
    
  2. Se hai eseguito il pull della versione stabile, verifica l'installazione eseguendo:

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

    Se hai eseguito il pull di una versione specifica, verifica l'installazione eseguendo una simile all'esempio seguente:

    docker run --rm gcr.io/google.com/cloudsdktool/google-cloud-cli:stable-<release_version> gcloud version
    
  3. Esegui l'autenticazione con Google Cloud CLI eseguendo:

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

    Dopo l'autenticazione, le credenziali vengono conservate nel volume di gcloud-config container.

  4. Elenca le istanze di calcolo utilizzando queste credenziali per la verifica eseguendo contenitore con --volumes-from:

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

Installazione dei componenti aggiuntivi

Per impostazione predefinita, le immagini stabili (gcr.io/google.com/cloudsdktool/google-cloud-cli:stable e gcr.io/google.com/cloudsdktool/google-cloud-cli:stable-VERSION) non hanno installati diversi da bq e gsutil. Per installare ulteriori componenti per l'immagine stabile, puoi clonare cloud-sdk-docker alla directory GitHub e usa il comando docker build per creare l'immagine Docker :stable dal file Docker con INSTALL_COMPONENTS . Ad esempio, per aggiungere componenti 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 .

Per installare componenti aggiuntivi per le immagini basate su alpino, crea un Dockerfile che utilizza l'immagine Google Cloud CLI come immagine di base. Ad esempio, per aggiungere kubectl e app-engine-java, crea un Dockerfile simile a le seguenti:

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

Se openjdk7-jre non funziona, prova openjdk8-jre.

Al termine, esegui questo comando:

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

Installazione di versioni specifiche di Google Cloud CLI

Per installare versioni specifiche di Google Cloud CLI, specifica le tue Versione di gcloud CLI durante l'esecuzione del comando docker build:

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

Controlla la versione più recente di Google Cloud CLI e tutte le versioni precedenti di Google Cloud CLI.