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. Esta máquina virtual es propiedad de Google Cloud y la administra, por lo que no aparecerá en ninguno de tus proyectos de la plataforma.

Las instancias de Cloud Shell se aprovisionan por usuario y por sesión. La instancia persiste mientras tu sesión de Cloud Shell está activa. Después de una hora de inactividad, la sesión finaliza y se descarta su 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 tener más 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 la 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 solicitará que la autorices. Haz clic en Autorizar para permitir que la herramienta use tus credenciales y realice llamadas.

Consulta Autorización con Cloud Shell para obtener más información.

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 compatibilidad de la biblioteca de credenciales predeterminadas de la aplicación para definir el ID del proyecto, también está configurada para apuntar al proyecto activo en la consola de Google Cloud. La variable de entorno WEB_HOST apunta al nombre de host de la VM de Cloud Shell que puedes usar para realizar solicitudes HTTPS al entorno.

Selección de la zona

Cloud Shell se distribuye de forma global en varias regiones de Google Cloud. Cuando te conectas a Cloud Shell por primera vez, se te asigna de forma automática a la región disponible más cercana. No puedes elegir tu propia región y, si Cloud Shell no elige la región más cercana, Cloud Shell intentará migrar tu VM de Cloud Shell a una región más cercana cuando tu VM de Cloud Shell 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 del contenedor de Cloud Shell se actualiza semanalmente para mantener las herramientas preempaquetadas al día. 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 tu VM asignada y, además, 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 gcloud CLI
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
Rita 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 cierra inmediatamente después de la conexión. El modo seguro reinicia la instancia de Cloud Shell y accede con tu cuenta de administrador, 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 y, luego, 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.