Como o Cloud Shell funciona

O Cloud Shell provisiona uma máquina virtual do Compute Engine que executa um sistema operacional Linux baseado no Debian para uso temporário. Essa máquina virtual é de propriedade e gerenciada pelo Google Google Cloud, portanto, não aparece em nenhum dos seus Google Cloud projetos.

As instâncias do Cloud Shell são provisionadas por usuário e por sessão. A instância persiste enquanto sua sessão do Cloud Shell estiver ativa; após uma hora de inatividade, a sessão é encerrada e sua VM, descartada. Para mais informações sobre cotas de uso, consulte o guia limitações.

Com a experiência padrão do Cloud Shell, você recebe a alocação de uma VM efêmera pré-configurada e o ambiente com o qual trabalha é um contêiner do Docker em execução nessa VM. Você também pode personalizar seu ambiente automaticamente na inicialização da VM para garantir que a instância do Cloud Shell inclua suas ferramentas preferidas.

Armazenamento em disco permanente

O Cloud Shell provisiona 5 GB de armazenamento em disco permanente sem custo financeiro montado como seu $HOME diretório na instância da máquina virtual. Esse armazenamento é fornecido por usuário e está disponível ao longo dos projetos. Diferente da própria instância, esse armazenamento não é encerrado devido a inatividade. Todos os arquivos armazenados no diretório inicial, incluindo softwares instalados, scripts e arquivos de configuração do usuário, como .bashrc e .vimrc, permanecem entre as sessões. Seu diretório $HOME é privado e não pode ser acessado por outros usuários.

Ao usar o Cloud Shell, não é possível expandir o espaço de armazenamento em disco permanente. Para ter mais controle sobre a persistência do armazenamento e mais espaço de armazenamento, use o Cloud Workstations.

O Cloud Shell também oferece o modo temporário , que é a experiência do Cloud Shell sem armazenamento em disco permanente. Com o modo temporário, o tempo de startup é mais rápido, mas todos os arquivos criados na sessão são perdidos quando ela termina.

Autorização

Quando você faz uma chamada de API do Google Cloud ou usa uma ferramenta de linha de comando que requer credenciais (como a Google Cloud CLI) com o Cloud Shell pela primeira vez, o Cloud Shell solicita a autorização. Clique em Autorizar para permitir que a ferramenta use suas credenciais para fazer chamadas.

Consulte Como autorizar com o Cloud Shell para mais detalhes.

Variáveis de ambiente pré-configuradas

Quando o Cloud Shell é iniciado, o projeto ativo no console Google Cloud é propagado para sua configuração gcloudno Cloud Shell para uso imediato. GOOGLE_CLOUD_PROJECT, a variável de ambiente usada pelo suporte da biblioteca Application Default Credentials para definir o ID do projeto, também é definida para apontar para o projeto ativo em o Google Cloud console. A variável de ambiente WEB_HOST aponta para o nome do host da VM do Cloud Shell, que pode ser usada para fazer solicitações HTTPS ao ambiente.

Seleção de zona

O Cloud Shell é distribuído globalmente em várias Google Cloud regiões. Quando você se conecta ao Cloud Shell pela primeira vez, você é automaticamente atribuído à região mais próxima disponível. Não é possível escolher sua própria região. Se o Cloud Shell não escolher a região mais próxima, o Cloud Shell tentará migrar a VM do Cloud Shell para uma região mais próxima quando a VM do Cloud Shell não for em uso.

Para visualizar sua região atual, execute o seguinte comando em uma sessão do Cloud Shell:

curl metadata/computeMetadata/v1/instance/zone

Lançamento da imagem

A imagem do contêiner do Cloud Shell é atualizada semanalmente para manter as ferramentas prontas atualizadas. Isso significa que o Cloud Shell sempre vem com as versões mais recentes da CLI gcloud, do Docker e de outros utilitários.

Usuário raiz

Ao configurar uma sessão do Cloud Shell, você recebe uma conta de usuário comum do Unix com um nome de usuário com base no seu endereço de email. Com esse acesso, você tem privilégios de root completos na VM alocada e pode até executar comandos sudo, se necessário.

Ferramentas disponíveis

A instância de máquina virtual do Cloud Shell tem as seguintes ferramentas pré-instaladas:

Tipo Ferramenta
Intérpretes de comando shell para Linux bash
sh
Recursos para Linux Recursos padrão do sistema Debian
CLI gcloud e ferramentas Google Cloud CLI, incluindo a CLI gcloud
Editores de texto Emacs
Vim
Nano
Ferramentas de desenvolvimento e criação de pacote Gradle
Helm
Make
Maven
Bazel
npm
nvm
pip
uv
Composer
Ferramentas de controle de origem Git
Mercurial
Mais ferramentas Docker
iPython
Cliente MySQL
Compilador gRPC
TensorFlow

É possível instalar pacotes de software adicionais na instância da máquina virtual, mas a instalação não permanecerá após o término da instância, a menos que você instale o software no diretório $HOME ou crie um ambiente personalizado.

Suporte ao idioma

A instância de máquina virtual do Cloud Shell oferece suporte de linguagem pré-instalado para as seguintes linguagens:

Linguagem Versão
Java JRE/JDK 17 (OpenJDK)
Go Mais recentes
Python 3.12
Node.js LTS
Ruby 3.2
PHP 8,3
.NET Core SDKs 6.0, 7.0 e 8.0

A versão padrão do ambiente Java é a 17. Para alterar a sessão atual do Cloud Shell e usar a versão 1.11 do JRE e JDK, insira o código a seguir no prompt de comando do Cloud Shell:

sudo update-java-alternatives -s java-1.11.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

Para mudar para a versão 21:

sudo update-java-alternatives -s java-1.21.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64

Para voltar à versão 17:

sudo update-java-alternatives -s java-1.17.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/jre

Modo de segurança

Se houver um problema nos arquivos .bashrc ou .tmux.conf, o Cloud Shell será fechado imediatamente após a conexão. O modo de segurança reinicia a instância do Cloud Shell e conecta você como raiz, permitindo corrigir qualquer problema nos arquivos.

Para abrir o Cloud Shell no modo de segurança:

  • Anexe cloudshellsafemode=true ao URL.
  • No Cloud Shell, clique em , clique em Modo de segurança e em Reiniciar.

Para excluir permanentemente todos os arquivos do diretório principal e restaurar o diretório inicial do Cloud Shell para um estado limpo, você pode redefinir a VM do Cloud Shell.