O Cloud Shell aprovisiona uma máquina virtual do Compute Engine que executa um sistema operativo Linux baseado no Debian para sua utilização temporária. Esta máquina virtual é detida e gerida por Google Cloud, pelo que não aparece em nenhum dos seus projetos Google Cloud .
As instâncias do Cloud Shell são aprovisionadas por utilizador e por sessão. A instância persiste enquanto a sessão do Cloud Shell estiver ativa. Após uma hora de inatividade, a sessão termina e a respetiva VM é rejeitada. Para mais informações sobre as quotas de utilização, consulte o guia de limitações.
Com a experiência predefinida do Cloud Shell, é-lhe atribuída uma VM efémera pré-configurada, e o ambiente com o qual trabalha é um contentor Docker em execução nessa VM. Também pode personalizar o seu ambiente automaticamente no arranque da VM para garantir que a sua instância do Cloud Shell inclui as suas ferramentas preferenciais.
Armazenamento em disco persistente
O Cloud Shell aprovisiona 5 GB de armazenamento em disco persistente gratuito montado como o seu diretório $HOME
na instância da máquina virtual. Este armazenamento é por utilizador e está disponível em todos os projetos. Ao contrário da própria instância, este armazenamento não expira devido à inatividade. Todos os ficheiros que armazena no seu diretório pessoal, incluindo software instalado, scripts e ficheiros de configuração do utilizador, como .bashrc
e .vimrc
, persistem entre sessões. O seu diretório $HOME
é privado e não pode ser acedido por outros utilizadores.
Quando usa o Cloud Shell, não pode expandir o espaço de armazenamento do disco persistente. Para ter mais controlo da persistência do armazenamento e mais espaço de armazenamento, pode usar o Cloud Workstations.
O Cloud Shell também oferece o modo efémero, que é a experiência do Cloud Shell sem armazenamento em disco persistente. Com o modo efémero, tem tempos de arranque mais rápidos, mas todos os ficheiros que criar na sessão são perdidos quando esta termina.
Autorização
Quando faz uma chamada à API Google Cloud ou usa uma ferramenta de linha de comandos que requer credenciais (como a CLI Google Cloud) com a Cloud Shell pela primeira vez, a Cloud Shell pede-lhe autorização. Clique em Autorizar para permitir que a ferramenta use as suas credenciais para fazer chamadas.
Consulte o artigo Autorizar com o Cloud Shell para ver mais detalhes.
Variáveis de ambiente pré-configuradas
Quando o Cloud Shell é iniciado, o projeto ativo na
consola é propagado para a sua configuração gcloud
no Cloud Shell para utilização imediata. Google Cloud GOOGLE_CLOUD_PROJECT
, a variável de ambiente usada pelo suporte da biblioteca de credenciais padrão da aplicação para definir o ID do projeto, também está definida para apontar para o projeto ativo na consola Google Cloud . A variável de ambiente WEB_HOST
aponta para o nome do anfitrião da VM do Cloud Shell, que pode usar para fazer pedidos HTTPS ao ambiente.
Seleção de zonas
O Cloud Shell está distribuído globalmente por várias Google Cloud regiões. Quando se liga pela primeira vez ao Cloud Shell, é automaticamente atribuído à região disponível mais próxima. Não pode escolher a sua própria região e, se o Cloud Shell não escolher a região mais próxima, tenta migrar a sua VM do Cloud Shell para uma região mais próxima quando a VM do Cloud Shell não está a ser usada.
Para ver a sua região atual, execute o seguinte comando a partir de uma sessão do Cloud Shell:
curl metadata/computeMetadata/v1/instance/zone
Implementação de imagens
A imagem do contentor da Cloud Shell é atualizada semanalmente para manter as ferramentas pré-instaladas atualizadas. Isto significa que o Cloud Shell está sempre disponível com as versões mais recentes da CLI gcloud, do Docker e de outras utilidades.
Utilizador de raiz
Quando configura uma sessão do Cloud Shell, recebe uma conta de utilizador Unix normal com um nome de utilizador baseado no seu endereço de email. Com este acesso, tem privilégios de raiz completos na VM atribuída e pode até executar comandos sudo, se precisar.
Ferramentas disponíveis
A instância da máquina virtual do Cloud Shell tem as seguintes ferramentas pré-instaladas:
Tipo | Ferramenta |
---|---|
Intérpretes de shell do Linux |
bash sh |
Utilitários do Linux | Utilitários do sistema Debian padrão |
CLI gcloud e ferramentas |
SDK do App Engine CLI do Google Cloud, incluindo a CLI gcloud gsutil para o Cloud Storage
|
Editores de texto |
Emacs Vim Nano |
Ferramentas de criação e empacotamento |
Gradle Helm Make Maven Bazel npm nvm pip Composer |
Ferramentas de controlo de origem |
Git Mercurial |
Ferramentas adicionais |
Docker iPython Cliente MySQL Compilador gRPC TensorFlow Terraform |
Pode instalar pacotes de software adicionais na instância da máquina virtual, mas a instalação não persiste após a terminação da instância, a menos que instale o software no diretório $HOME
ou crie um ambiente personalizado.
Suporte de idiomas
A instância de máquina virtual do Cloud Shell oferece suporte de idiomas pré-instalado para o seguinte:
Idioma | 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 predefinida do ambiente Java é a 17. Para alterar a sessão atual do Cloud Shell para usar a versão 1.11 do JRE e JDK, introduza o seguinte no pedido 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 alterar para 21:
sudo update-java-alternatives -s java-1.21.0-openjdk-amd64 && export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
Para voltar a alterar para 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 existir um problema nos ficheiros .bashrc
ou .tmux.conf
, o Cloud Shell fecha-se imediatamente após a ligação. O modo de segurança
reinicia a instância do Cloud Shell e inicia sessão como root,
o que lhe permite corrigir quaisquer problemas nos ficheiros.
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, de seguida, clique em Reiniciar.
Para eliminar permanentemente todos os ficheiros no seu diretório base e restaurar o diretório base do Cloud Shell para um estado limpo, pode repôr a sua VM do Cloud Shell.