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
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
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
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
.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.