O Cloud Shell provisiona uma máquina virtual do Compute Engine que executa um sistema operacional Linux baseado em Debian para uso temporário. Essa máquina virtual é de propriedade e é gerenciada pelo Google Cloud, portanto, não aparece em nenhum dos seus projetos do Google Cloud.
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 a VM é descartada. Para mais informações sobre cotas de uso, consulte o guia de 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 fornece 5 GB de armazenamento em disco permanente gratuito, montado como seu diretório $HOME
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 de disco permanente. Para ter mais controle da persistência de armazenamento e mais espaço, use as estações de trabalho do Cloud.
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 à 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 do Google Cloud é propagado para sua configuração gcloud
no 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 no
Console do Google Cloud. 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 regiões do Google Cloud. 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 |
SDK do App Engine Google Cloud CLI, incluindo a CLI gcloud gsutil para o Cloud Storage
|
Editores de texto | Emacs Vim Nano |
Ferramentas de desenvolvimento e criação de pacote |
Gradle Helm Make Maven Bazel npm nvm pip Composer |
Ferramentas de controle de origem |
Git Mercurial |
Mais ferramentas |
Docker iPython MySQL client gRPC compiler TensorFlow Terraform |
É 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 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 faz login com acesso root,
permitindo que você corrija quaisquer problemas nos arquivos.
Para abrir o Cloud Shell no modo de segurança:
- Anexe
cloudshellsafemode=true
ao URL. - No Cloud Shell, clique em , Modo de segurança e Reiniciar.
Para excluir permanentemente todos os arquivos do diretório principal e restaurar o diretório inicial do Cloud Shell para um estado limpo, redefina a VM do Cloud Shell.