Cómo funciona Cloud Shell

Cloud Shell aprovisiona una máquina virtual de Compute Engine que ejecuta un sistema operativo Linux basado en Debian para tu uso temporal. Google Cloud es propietario y administra esta máquina virtual, por lo que no aparecerá en ninguno de tus proyectos de Google Cloud.

Las instancias de Cloud Shell se aprovisionan por usuario y por sesión. La instancia persiste mientras se encuentra activa la sesión de Cloud Shell. Después de una hora de inactividad, la sesión finaliza y se descarta la VM. Para obtener más información sobre las cuotas de uso, consulta la guía de limitaciones.

Con la experiencia predeterminada de Cloud Shell, se te asignará una VM efímera y ya configurada y el entorno con el que trabajas es un contenedor de Docker que se ejecuta en esa VM. También puedes personalizar tu entorno de forma automática cuando se inicia la VM a fin de asegurarte de que la instancia de Cloud Shell incluya tus herramientas preferidas.

Almacenamiento en discos persistentes

Cloud Shell proporciona 5 GB de almacenamiento en disco persistente gratuito activado como su directorio $HOME en la instancia de máquina virtual. Este almacenamiento es por usuario y está disponible en todos los proyectos. A diferencia de la instancia en sí, con este almacenamiento no se agota el tiempo de espera en inactividad. Todos los archivos que almacena en su directorio principal, incluidos el software instalado, las secuencias de comandos y los archivos de configuración de usuario como .bashrc y .vimrc, persisten entre sesiones. El directorio $HOME es privado, por lo que otros usuarios no pueden acceder a él.

Para obtener un mayor control de la persistencia de almacenamiento, puedes usar Cloud Workstations.

Cloud Shell también ofrece el modo efímero, que es la experiencia de Cloud Shell sin almacenamiento en disco persistente. Con el modo efímero, tendrás tiempos de inicio más rápidos, pero todos los archivos que crees en tu sesión se perderán cuando termine la sesión.

Autorización

Cuando realizas una llamada a la API de Google Cloud o usas una herramienta de línea de comandos que requiere credenciales (como Google Cloud CLI) con Cloud Shell por primera vez, Cloud Shell te solicita que la autorices. Haz clic en Autorizar para permitir que la herramienta use tus credenciales a fin de realizar llamadas.

Consulta Autorizar con Cloud Shell para obtener más detalles.

Variables de entorno preconfiguradas

Cuando se inicia Cloud Shell, el proyecto activo en la consola de Google Cloud se propaga a la configuración de gcloud dentro de Cloud Shell para su uso inmediato. GOOGLE_CLOUD_PROJECT, la variable de entorno que usa la biblioteca de credenciales predeterminadas de la aplicación para definir el ID del proyecto, también se configura para apuntar al proyecto activo en la consola de Google Cloud. La variable de entorno WEB_HOST apunta al nombre de host de tu VM de Cloud Shell que puedes usar para realizar solicitudes HTTPS al entorno.

Selección de la zona

Cloud Shell se distribuye globalmente en varias regiones de Google Cloud. Cuando te conectas a Cloud Shell por primera vez, se te asigna automáticamente a la región más cercana disponible. No puedes elegir tu propia región y, si Cloud Shell no elige la más cercana, intentará migrar tu VM de Cloud Shell a una región más cercana cuando esta no esté en uso.

Para ver tu región actual, ejecuta el siguiente comando desde una sesión de Cloud Shell:

curl metadata/computeMetadata/v1/instance/zone

Lanzamiento de imagen

La imagen de contenedor de Cloud Shell se actualiza semanalmente para mantener actualizadas las herramientas ya empaquetadas. Esto significa que Cloud Shell siempre incluye las versiones más recientes de gcloud CLI, Docker y otras utilidades.

Usuario raíz

Cuando configuras una sesión de Cloud Shell, obtienes una cuenta de usuario de Unix normal con un nombre de usuario basado en tu dirección de correo electrónico. Con este acceso, tienes privilegios de administrador completos en la VM asignada y hasta puedes ejecutar comandos sudo, si es necesario.

Herramientas disponibles

La instancia de máquina virtual de Cloud Shell tiene preinstaladas las siguientes herramientas:

Tipo Herramienta
Intérpretes de shell de Linux bash
sh
Herramientas de Linux Utilidades estándar del sistema Debian
CLI y herramientas de gcloud SDK de App Engine
Google Cloud CLI, incluida la CLI de gcloud
gsutil para Cloud Storage
Editores de texto Emacs
Vim
Nano
Herramientas de empaquetado y compilación Gradle
Helm
Make
Maven
Bazel
npm
nvm
pip
Composer
Herramientas de control de código fuente Git
Mercurial
Herramientas adicionales Docker
iPython
cliente MySQL
compilador gRPC
TensorFlow
Terraform

Puede instalar paquetes de software adicionales en la instancia de máquina virtual, pero la instalación no continuará después de que la instancia finalice a menos que instale el software en su directorio $HOME o cree un entorno personalizado.

Idiomas admitidos

La instancia de máquina virtual de Cloud Shell proporciona compatibilidad de idiomas preinstalada para los siguientes lenguajes:

Idioma Versión
Java JRE/JDK 17.0.6 (OpenJDK)
Go 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 y 6.0
Entornos de ejecución principales: 2.1.30, 3.1.32, 5.0.17 y 6.0.16

La versión predeterminada del entorno de Java es 11 Para cambiar la sesión de Cloud Shell actual, a fin de usar la versión 1.8 de JRE y JDK, ingresa el siguiente comando en el símbolo de sistema de Cloud Shell:

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

Para volver a la versión 11, ingresa el siguiente comando:

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

Modo seguro

Si hay un problema en los archivos .bashrc o .tmux.conf, Cloud Shell se cerrará inmediatamente después de la conexión. El modo seguro reinicia tu instancia de Cloud Shell y te inicia sesión como raíz, lo que te permite solucionar cualquier problema en los archivos.

Para abrir Cloud Shell en modo seguro, haz lo siguiente:

  • Agrega cloudshellsafemode=true a la URL.
  • En Cloud Shell, haz clic en , haz clic en Modo seguro y, luego, en Reiniciar.

Para borrar de forma permanente todos los archivos de tu directorio principal y restablecer tu directorio principal de Cloud Shell a un estado limpio, puedes restablecer tu VM de Cloud Shell.