A imagem do Docker da CLI do Google Cloud permite extrair uma versão específica da CLI do gcloud como uma imagem do Docker do Container Registry e executar rapidamente os comandos da CLI do Google Cloud em um contêiner isolado e configurado corretamente.
A imagem do Docker da CLI do Google Cloud é a CLI gcloud instalada
sobre uma imagem do Debian ou do Alpine. A imagem do Docker é hospedada no
Container Registry
com o seguinte nome de repositório:
gcr.io/google.com/cloudsdktool/google-cloud-cli
. As imagens também estão disponíveis usando os repositórios us.gcr.io
, eu.gcr.io
e asia.gcr.io
.
Opções de imagem do Docker
Há cinco imagens do Docker da CLI do Google Cloud: recentes, slim, emuladores, debian_component_based e alpine. Especifique sua preferência usando a tag apropriada depois do nome do repositório do host:
:latest
,:VERSION
: imagem grande (baseada em Debian) com componentes extras pré-instalados.:slim
,:VERSION-slim
: imagem menor (baseada em Debian) sem componentes pré-instalados.:emulators
,:VERSION-emulators
: imagem menor (baseada em Debian) com componentes do emulador pré-instalados.:alpine
,:VERSION-alpine
: a menor imagem (baseada em Alpine) sem outros componentes instalados. Esta imagem é compatível com linux/arm.:debian_component_based
,:VERSION-debian_component_based
: baseado em Debian com todos os componentes. Diferente de:latest
, que usava pacotes deb, essa imagem usa o gerenciador de componentes para instalar componentes. Essa imagem é compatível com linux/arm.
Como instalar uma imagem do Docker especificada
Para usar a imagem da versão mais recente da CLI do Google Cloud,
gcr.io/google.com/cloudsdktool/google-cloud-cli:latest
, puxe-a do Container Registry executando o seguinte comando:docker pull gcr.io/google.com/cloudsdktool/google-cloud-cli:latest
Se você extraiu a versão mais recente, verifique a instalação executando:
docker run --rm gcr.io/google.com/cloudsdktool/google-cloud-cli:latest gcloud version
Se você extraiu uma versão específica, verifique a instalação executando um comando semelhante ao seguinte exemplo:
docker run --rm gcr.io/google.com/cloudsdktool/google-cloud-cli:372.0.0 gcloud version
Autentique com a CLI do Google Cloud executando:
docker run -ti --name gcloud-config gcr.io/google.com/cloudsdktool/google-cloud-cli gcloud auth login
Depois de autenticadas com sucesso, as credenciais são preservadas no volume de
gcloud-config container
.Liste instâncias de computador usando essas credenciais para verificar, executando o contêiner com
--volumes-from
:docker run --rm --volumes-from gcloud-config gcr.io/google.com/cloudsdktool/google-cloud-cli gcloud compute instances list --project your_project
Como instalar componentes complementares
Por padrão, as imagens mais recentes (gcr.io/google.com/cloudsdktool/google-cloud-cli:latest
e gcr.io/google.com/cloudsdktool/google-cloud-cli:VERSION
) têm todos os
componentes da CLI do Google Cloud instalados.
No entanto, as imagens gcr.io/google.com/cloudsdktool/google-cloud-cli:slim
,
gcr.io/google.com/cloudsdktool/google-cloud-cli:emulators
e
gcr.io/google.com/cloudsdktool/google-cloud-cli:alpine
não vêm com componentes adicionais pré-instalados. É possível
estender essas imagens seguindo as instruções abaixo:
Imagens baseadas no Debian
Para instalar outro componente, como google-cloud-sdk-datastore-emulator
,
execute os seguintes comandos:
cd debian_slim/
docker build --build-arg CLOUD_SDK_VERSION=159.0.0 \
--build-arg INSTALL_COMPONENTS="google-cloud-sdk-datastore-emulator" \
-t my-cloud-sdk-docker:slim .
Imagens baseadas em Alpine
Para instalar outros componentes para imagens baseadas em Alpine, crie um Dockerfile
que use a imagem da CLI do Google Cloud como a imagem base. Por exemplo, para adicionar os componentes kubectl
e app-engine-java
, crie um Dockerfile para se parecer com este:
FROM gcr.io/google.com/cloudsdktool/google-cloud-cli:alpine
RUN apk --update add openjdk7-jre
RUN gcloud components install app-engine-java kubectl
Depois disso, execute o seguinte comando:
docker build -t my-cloud-sdk-docker:alpine .
Como instalar versões específicas da CLI do Google Cloud
Para instalar versões específicas da CLI do Google Cloud, especifique a versão da CLI do gcloud de sua preferência ao executar o comando docker build
:
docker build -t my-cloud-sdk-docker:alpine --build-arg CLOUD_SDK_VERSION=<release_number> .