
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Cloud Run es una plataforma de procesamiento administrada que te permite ejecutar contenedores sin estado que se pueden invocar a través de solicitudes HTTP. Cloud Run es una plataforma sin servidores que simplifica la administración de la infraestructura para que puedas enfocarte en lo que más importa: crear aplicaciones extraordinarias.
Cloud Run se basa en Knative, por lo que puedes ejecutar tus contenedores completamente administrados con Cloud Run o en el clúster de Google Kubernetes Engine con Cloud Run en GKE.
El objetivo de este lab es que crees una imagen de aplicación sencilla alojada en contenedores y la implementes en Cloud Run.
En este lab, aprenderás a realizar las siguientes tareas:
En cada lab, recibirás un proyecto de Google Cloud y un conjunto de recursos nuevos por tiempo limitado y sin costo adicional.
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá una ventana emergente para que selecciones tu forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
Haz clic en Siguiente.
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
También puedes encontrar la contraseña en el panel Detalles del lab.
Haz clic en Siguiente.
Haga clic para avanzar por las páginas siguientes:
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Google Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud.
Google Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.
En la consola de Cloud, en la barra de herramientas superior derecha, haz clic en el botón Abrir Cloud Shell.
Haz clic en Continuar.
El aprovisionamiento y la conexión al entorno demorarán unos minutos. Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. Por ejemplo:
gcloud es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con el completado de línea de comando.
Resultado:
Resultado de ejemplo:
Resultado:
Resultado de ejemplo:
A continuación, encontrará una lista de referencia con algunos comandos muy básicos de Linux que se pueden incluir en las instrucciones o los bloques de código de este lab.
Comando --> | Acción | . | Comando --> | Acción |
---|---|---|---|---|
mkdir (crear directorio) | crea una carpeta nueva | . | cd (cambiar directorio) | cambia la ubicación a otra carpeta |
ls (lista ) | enumera los archivos y las carpetas en la carpeta | . | cat (concatenar) | lee los contenidos de un archivo sin usar un editor |
apt-get update | actualiza la biblioteca del administrador de paquetes | . | ping | indicador para probar la accesibilidad de un host |
mv (mover ) | mueve un archivo | . | cp (copiar) | crea la copia de un archivo |
pwd (presentar directorio de trabajo ) | muestra su ubicación actual | . | sudo (superusuario hace) | otorga privilegios de administrador superiores |
En esta tarea, compilarás una aplicación sencilla de Node.js basada en Express que responda ante las solicitudes HTTP.
helloworld
y, luego, ve a él en la vista:A continuación, crearás y editarás archivos. Para editar archivos, haz clic en el botón Abrir editor en Cloud Shell para utilizar nano
o el editor de código de Cloud Shell.
Crea un archivo package.json
y agrégale el siguiente contenido:
Lo más importante es que el archivo anterior contiene una secuencia de comandos de inicio y una dependencia del framework de aplicaciones web Express.
Presiona CTRL + X. Luego, Y y, después, Intro para guardar el archivo package.json
.
A continuación, en el mismo directorio, crea un archivo index.js
y cópiale las siguientes líneas:
Con este código, se crea un servidor web básico que escucha en el puerto definido por la variable de entorno PORT
. Ahora, la app está terminada y lista para alojarla en contenedores y subirla a Artifact Registry.
index.js
Dockerfile
en el mismo directorio que los archivos fuente y agrega el siguiente contenido:Presiona CTRL+X. Luego, Y y, después, Intro para guardar el archivo Dockerfile
.
Usa Cloud Build para compilar la imagen de contenedor. Para ello, ejecuta el siguiente comando desde el directorio que contiene el Dockerfile
(fíjate en la variable de entorno $GOOGLE_CLOUD_PROJECT del comando, que contiene el ID del proyecto del lab):
Cloud Build es un servicio que ejecuta tus compilaciones en Google Cloud. Ejecuta una serie de pasos de compilación, cada uno en un contenedor de Docker, para producir tu contenedor de aplicaciones (o demás artefactos) y enviarlo a Artifact Registry, todo en un solo comando.
Una vez enviado al registro, verás un mensaje de éxito que contiene el nombre de la imagen (gcr.io/[ID-DEL-PROYECTO]/helloworld
). La imagen se almacena en Artifact Registry y puede volver a usarse si así se desea.
gcloud
como auxiliar de credenciales para todos los registros de Docker compatibles con Google:docker
:Debería abrirse una ventana del navegador con el mensaje “Hello World!”. También puedes usar curl localhost:8080
.
La marca allow-unauthenticated del comando anterior permite acceder de forma pública a tu servicio.
service name
.Espera un momento a que finalice la implementación.
Si la operación es exitosa, la línea de comandos mostrará la URL de servicio:
Ahora puedes abrir la URL de servicio en cualquier ventana del navegador para visitar el contenedor implementado.
¡Felicitaciones! Acabas de implementar una aplicación empaquetada en una imagen de contenedor en Cloud Run. Cloud Run escala la imagen del contenedor automáticamente y de forma horizontal para controlar las solicitudes que se reciben y, luego, reduce la escala cuando disminuye la demanda. En tu propio entorno, solo debes pagar por la CPU, la memoria y las herramientas de redes que hayas consumido durante la administración de solicitudes.
En este lab, usaste la línea de comandos de gcloud
. Cloud Run también está disponible a través de la consola de Cloud.
helloworld
:Si bien Cloud Run no cobra cuando el servicio no se usa, es posible que se te cobre por el almacenamiento de la imagen del contenedor compilada.
helloworld
con el siguiente comando:Cuando se te solicite continuar, escribe Y
y presiona Intro.
Para borrar el servicio de Cloud Run, usa el siguiente comando:
Y
y presiona Intro.Cuando haya completado el lab, haga clic en Finalizar lab. Google Cloud Skills Boost quitará los recursos que usó y limpiará la cuenta.
Tendrá la oportunidad de calificar su experiencia en el lab. Seleccione la cantidad de estrellas que corresponda, ingrese un comentario y haga clic en Enviar.
La cantidad de estrellas indica lo siguiente:
Puede cerrar el cuadro de diálogo si no desea proporcionar comentarios.
Para enviar comentarios, sugerencias o correcciones, use la pestaña Asistencia.
Completaste este lab.
Si quieres obtener más información para compilar un contenedor HTTP sin estado adecuado para Cloud Run a partir de código fuente y enviarlo a Artifact Registry, consulta estas páginas:
Copyright 2020 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.
Este contenido no está disponible en este momento
Te enviaremos una notificación por correo electrónico cuando esté disponible
¡Genial!
Nos comunicaremos contigo por correo electrónico si está disponible
One lab at a time
Confirm to end all existing labs and start this one