Come funziona Cloud Shell

Cloud Shell ti consente di gestire le risorse Google Cloud e sviluppare applicazioni direttamente dal browser senza installare strumenti locali. Quando avvii una sessione, Cloud Shell esegue il provisioning di una macchina virtuale Compute Engine temporanea che esegue Linux basato su Debian. PoichéGoogle Cloud possiede e gestisce questa macchina virtuale, non viene visualizzata nei tuoi progetti Google Cloud .

Google Cloud esegue il provisioning delle istanze di Cloud Shell in base all'utente e alla sessione. L'istanza persiste mentre la sessione di Cloud Shell è attiva. Dopo un'ora di inattività, la sessione termina e la VM viene eliminata. Per saperne di più sulle quote di utilizzo, consulta la guida alle limitazioni.

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

Archiviazione su Persistent Disk

Cloud Shell esegue il provisioning di 5 GB di spazio di archiviazione su disco permanente senza costi, montato come directory $HOME nell'istanza della macchina virtuale. Questo spazio di archiviazione è disponibile per utente e per tutti i progetti. A differenza dell'istanza stessa, questo spazio di archiviazione non va in timeout 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 di disco permanente. Per un maggiore controllo sulla persistenza dello spazio di archiviazione e per avere più spazio di archiviazione, puoi utilizzare Cloud Workstations.

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

Autorizzazione

Quando effettui una chiamata API Google Cloud o utilizzi uno strumento a riga di comando che richiede le credenziali (come Google Cloud CLI) con Cloud Shell per la prima volta, Cloud Shell ti chiede di autorizzare. Fai clic su Autorizza per consentire allo strumento di utilizzare le tue credenziali per effettuare chiamate.

Per ulteriori dettagli, consulta Autorizzazione con Cloud Shell.

Variabili di ambiente preconfigurate

All'avvio di Cloud Shell, il progetto attivo nella console Google Cloud viene propagato alla configurazione di gcloud all'interno di Cloud Shell per l'utilizzo immediato. GOOGLE_CLOUD_PROJECT, la variabile di ambiente utilizzata dal supporto della libreria Credenziali predefinite dell'applicazione per definire l'ID progetto, è impostata anche in modo da puntare al progetto attivo nella console Google Cloud . La variabile di ambiente WEB_HOST punta al nome host della VM di Cloud Shell, che puoi utilizzare per effettuare richieste HTTPS all'ambiente.

Selezione delle zone

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

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

curl metadata/computeMetadata/v1/instance/zone

Implementazione dell'immagine

L'immagine container di Cloud Shell viene aggiornata settimanalmente per mantenere aggiornati gli strumenti predefiniti. Ciò significa che Cloud Shell include sempre le ultime versioni di gcloud CLI, Docker e altre utilità.

Utente root

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

Strumenti disponibili

L'istanza della macchina virtuale di Cloud Shell ha i seguenti strumenti preinstallati:

Tipo Strumento
Interpreti di shell Linux bash
sh
Utilità Linux Utilità di sistema Debian standard
gcloud CLI e strumenti Google Cloud CLI, inclusa gcloud CLI
Editor di testo Emacs
Vim
Nano
Strumenti di creazione e pacchettizzazione Gradle
Helm
Make
Maven
Bazel
npm
nvm
pip
uv
Composer
Strumenti di controllo del codice sorgente Git
Mercurial
Strumenti aggiuntivi Docker
iPython
Client MySQL
Compilatore gRPC
TensorFlow

Puoi installare pacchetti software aggiuntivi nell'istanza di macchina virtuale, ma l'installazione non verrà mantenuta dopo la terminazione dell'istanza, a meno che non installi il software nella directory $HOME o crei un ambiente personalizzato.

Supporto dei linguaggi

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

Lingua Versione
Java JRE/JDK 17 (OpenJDK)
Vai Più recenti
Python 3,12
Node.js LTS
Ruby 3.2
PHP 8,3
.NET Core SDK 6.0, 7.0 e 8.0

La versione predefinita dell'ambiente Java è 17. Per modificare la sessione Cloud Shell corrente in modo da utilizzare la versione 1.11 di JRE e JDK, inserisci quanto segue nel prompt dei comandi di Cloud Shell:

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

Per passare a 21:

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

Per tornare a 17:

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

Modalità provvisoria

Se si verifica un problema nei file .bashrc o .tmux.conf, Cloud Shell si chiude immediatamente dopo la connessione. La modalità provvisoria riavvia l'istanza di Cloud Shell e ti consente di accedere come utente root, in modo da poter risolvere eventuali problemi nei file.

Per aprire Cloud Shell in modalità provvisoria:

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

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