Come funziona Cloud Shell

Cloud Shell esegue il provisioning di una macchina virtuale Compute Engine eseguire un sistema operativo Linux basato su Debian per uso temporaneo. Questo macchina virtuale è di proprietà di e gestita da Google Cloud, pertanto non verrà visualizzata all'interno di uno qualsiasi dei tuoi progetti Google Cloud.

Il provisioning delle istanze di Cloud Shell viene eseguito per utente e per sessione base. L'istanza persiste mentre la sessione Cloud Shell è attiva. Dopo un'ora di inattività, la sessione viene interrotta e la VM viene eliminata. Per ulteriori informazioni sulle quote di utilizzo, consulta guida alle limitazioni.

Con l'esperienza Cloud Shell predefinita, ti viene allocato temporanea e preconfigurata e l'ambiente con cui lavori è un Docker container in esecuzione su quella VM. Puoi anche personalizzare dell'ambiente automaticamente all'avvio della VM per garantire che la tua istanza di Cloud Shell includa i tuoi strumenti preferiti.

Archiviazione su disco permanente

Cloud Shell esegue il provisioning di 5 GB di spazio di archiviazione su disco permanente gratuito montato come directory $HOME nell'istanza della macchina virtuale. Questo spazio di archiviazione è attivo per singoli utenti ed è disponibile per più progetti. A differenza dell'istanza stessa, lo spazio di archiviazione non scade in caso di inattività. Tutti i file archiviati nella home directory, inclusi il software installato, gli script e i file di configurazione utente come .bashrc e .vimrc, persistono da una sessione all'altra. La directory $HOME è riservata esclusivamente a te e non è accessibile da altri utenti.

Quando utilizzi Cloud Shell, non puoi espandere lo spazio di archiviazione dei dischi permanenti. Per un maggiore controllo della persistenza dello spazio di archiviazione e per avere più spazio di archiviazione, puoi utilizzare Cloud Workstations.

Cloud Shell offre anche la modalità temporanea, ovvero l'esperienza Cloud Shell senza spazio di archiviazione su disco permanente. Con la modalità temporanea, i tempi di avvio sono più rapidi, ma tutti i file creati nella sessione andranno persi al termine della sessione.

Autorizzazione

Quando effettui una chiamata API Google Cloud o usi uno strumento a riga di comando richiede credenziali (ad esempio Google Cloud CLI) con Cloud Shell per la prima volta, che richiede l'autorizzazione. Fai clic su Autorizza per consentire allo strumento di utilizzare le tue credenziali per effettuare chiamate.

Per maggiori dettagli, consulta la sezione Autorizzazione con Cloud Shell.

Variabili di ambiente preconfigurate

Quando viene avviato Cloud Shell, il progetto attivo nella console Google Cloud viene propagato alla configurazione di gcloud all'interno di Cloud Shell per un utilizzo immediato. GOOGLE_CLOUD_PROJECT, la variabile di ambiente utilizzata dal supporto della libreria delle credenziali predefinite dell'applicazione per definire l'ID progetto, è impostata anche per puntare al progetto attivo nella console Google Cloud. La variabile di ambiente WEB_HOST rimanda a nome host della VM Cloud Shell che puoi utilizzare per creare richieste all'ambiente.

Selezione della zona

Cloud Shell è distribuito a livello globale in più regioni Google Cloud. Quando ti connetti per la prima volta di Cloud Shell, ti viene assegnato automaticamente regione disponibile. Non puoi scegliere la tua regione e se Cloud Shell non sceglie la regione più vicina, Cloud Shell tenta di eseguire della VM Cloud Shell in una regione più vicina La VM Cloud Shell non è in uso.

Per visualizzare la regione attuale, esegui questo comando da una Sessione Cloud Shell:

curl metadata/computeMetadata/v1/instance/zone

Implementazione dell'immagine

L'immagine del contenitore Cloud Shell viene aggiornata settimanalmente per mantenere aggiornati gli strumenti precompilati. Ciò significa che Cloud Shell è sempre con le ultime versioni di gcloud CLI, Docker e altre utilità.

Utente root

Quando configuri una sessione Cloud Shell, ottieni un normale account utente Unix con un nome utente basato sul tuo indirizzo email. Con questo accesso, hai i privilegi root completi sulla VM allocata e puoi persino eseguire comandi sudo se necessario.

Strumenti disponibili

L'istanza di macchina virtuale di Cloud Shell ha le seguenti caratteristiche: strumenti preinstallati:

Tipo Strumento
Interpreti di shell Linux bash
sh
Utilità Linux Utilità di sistema Debian standard
Interfaccia a riga di comando e strumenti gcloud App Engine SDK
Google Cloud CLI, inclusa gcloud CLI
gsutil per Cloud Storage
Editor di testo Emacs
Vim
Nano
Crea e pacchettizza strumenti Gradle
Helm
Make
Maven
Bazel
npm
nvm
pip
Composer
Strumenti di controllo del codice sorgente Git
Mercuriale
Strumenti aggiuntivi Docker
iPython
Client MySQL
Compilatore gRPC
TensorFlow
Terraform

Puoi installare pacchetti software aggiuntivi sull'istanza della macchina virtuale ma l'installazione non verrà mantenuta al termine dell'istanza a meno che tu installa il software nella directory $HOME o crea un ambiente personalizzato.

Supporto dei linguaggi

L'istanza della macchina virtuale Cloud Shell fornisce il supporto preinstallato per i seguenti linguaggi:

Lingua Versione
Java JRE/JDK 17.0.6 (OpenJDK)
Vai 1.20.4
Python 3.9.2
Node.js v18.12.1
Ruby 2.7.8
PHP 7.4.33
.NET Core SDK 2.1, 3.1, 5.0 e 6.0
Ambienti di runtime principali 2.1.30, 3.1.32, 5.0.17 e 6.0.16

La versione predefinita dell'ambiente Java è 11. Per modificare la sessione Cloud Shell corrente in modo che utilizzi la versione 1.8 di JRE e JDK, inserisci quanto segue al prompt dei comandi di Cloud Shell:

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

Per tornare all'11:

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

Modalità provvisoria

Se si verifica un problema nei file .bashrc o .tmux.conf, Cloud Shell si chiude immediatamente dopo la connessione. Modalità provvisoria riavvia l'istanza di Cloud Shell e ti registra come utente root permettendoti di risolvere eventuali problemi nei file.

Per aprire Cloud Shell in modalità provvisoria:

  • Aggiungi cloudshellsafemode=true all'URL.
  • In Cloud Shell, fai clic su , poi su Modalità provvisoria e infine su Riavvia.

Per eliminare definitivamente tutti i file nella home directory e ripristinare la home directory di Cloud Shell in uno stato pulito, puoi reimpostare la VM Cloud Shell.