
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
Build with Cloud Build
/ 25
REST API Deployed
/ 25
Firestore database created
/ 25
Build image revision 0.2
/ 25
Para los labs del curso Serverless Cloud Run Development, leerás el caso de una empresa ficticia y ayudarás a los personajes con su plan de migración a una tecnología sin servidores.
Hace doce años, Lily fundó la cadena de clínicas veterinarias Pet Theory. Dado que la cadena ha crecido mucho, Lily pasa más tiempo hablando por teléfono con las empresas de seguros que atendiendo a las mascotas. ¡Si tan solo las empresas de seguros pudieran ver los totales de los tratamientos en línea!
En los labs anteriores de esta serie, Ruby, la asesora de computación, y Patrick, el ingeniero de DevOps, movieron la base de datos de clientes de Pet Theory a una base de datos sin servidores de Firestore en la nube y, luego, abrieron el acceso para que los clientes puedan programar citas en línea. Como el equipo de operaciones de Pet Theory está compuesto por una sola persona, la empresa necesita una solución sin servidores que no requiera mucho mantenimiento continuo.
En este lab, ayudarás a Ruby y a Patrick a otorgar a las empresas de seguros acceso a los datos de los clientes sin exponer la información de identificación personal (PII). Compilarás una puerta de enlace de API de transferencia de estado representacional (REST) segura con Cloud Run, que es un servicio sin servidores. Esto permitirá que las empresas de seguros vean el costo total de los tratamientos sin ver la PII de los clientes.
En este lab, aprenderás a hacer lo siguiente:
Este es un lab de nivel intermedio, lo que supone que el usuario tiene conocimientos previos sobre los entornos de la consola de Cloud y Cloud Shell. Además, como este lab forma parte de una serie, haber realizado otros anteriores podría ser útil, aunque no es obligatorio:
Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su 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: Ordene 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.
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. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.
Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. El resultado contiene una línea que declara el PROJECT_ID para esta sesión:
gcloud
es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.
Haz clic en Autorizar.
Ahora, el resultado debería verse de la siguiente manera:
Resultado:
Resultado:
Resultado de ejemplo:
gcloud
, consulta la guía con la descripción general de gcloud CLI en Google Cloud.
Liliana, fundadora de Pet Theory |
Hola Ruby: Cuando conversamos la semana pasada, te conté que estoy muy abrumada con el papeleo y las llamadas telefónicas de la empresa de seguros. ¿Lo recuerdas? Si existiera una forma de permitir que los representantes accedan a los registros de los clientes de manera segura y eficiente, todo sería más fácil. El nivel actual de la carga de trabajo es insostenible. ¿Puedes ayudarme? Lily |
Ruby, asesora de software |
Hola Lily: Almorcé con Patrick ayer y diseñamos un plan para facilitar el acceso seguro de terceros autorizados a los registros digitales de Pet Theory. Ejecutaremos esto en cuatro pasos:
Patrick y yo ya tenemos el conjunto de habilidades para los pasos 1 y 2, así que es un buen comienzo. Según nuestros planes, el prototipo estará en funcionamiento antes de que finalice la semana. Ruby |
Ayuda a Ruby a administrar las actividades necesarias para compilar la API de REST de Pet Theory.
En este lab, se habilitaron 2 APIs para ti:
Nombre | API |
---|---|
Cloud Build | cloudbuild.googleapis.com |
Cloud Run | run.googleapis.com |
Usa tu editor de texto favorito o usa el botón Editor de código en la cinta de Cloud Shell para ver los archivos go.mod
y go.sum
.
Crea el archivo main.go
y agrégale el siguiente contenido:
Dockerfile
y agrégale lo siguiente:El archivo server
es el objeto binario de ejecución compilado a partir de main.go
.
En la mayoría de las aplicaciones basadas en Go de Cloud Run, se puede usar un Dockerfile de plantillas como el de arriba, generalmente, sin modificarlo.
Este comando compila un contenedor con tu código y lo coloca en Container Registry, en tu proyecto. Para ver el contenedor, haz clic en el menú de navegación > Container Registry. Si no ves rest-api
, haz clic en Actualizar.
Haz clic en Revisar mi progreso para verificar la realización de la tarea indicada arriba.
Haz clic en Revisar mi progreso para verificar la realización de la tarea indicada arriba.
/v1/
al final de la URL y, luego, presiona Intro.Deberías ver el siguiente mensaje:
La API de REST ya está en funcionamiento. Con el servicio de prototipo disponible, en la siguiente sección, la API se usará para recuperar información de “clientes” de una base de datos de Firestore.
Ruby, asesora de software |
Hola Patrick: ¿Todavía tienes los datos de clientes ficticios que inventamos hace algún tiempo? Los necesitaremos para hacer pruebas. ¿Recuerdas cómo configurar una base de datos de Firestore y cómo importar datos? Ruby |
Patrick, administrador de TI |
Hola Ruby: Sí. Todavía tengo los datos de prueba. Los migraré a Firestore hoy para que puedas usarlos para hacer las pruebas. Patrick |
Ruby y Patrick crearon anteriormente una base de datos de prueba de 10 clientes, con algunos tratamientos propuestos para el gato de un cliente.
Ayuda a Patrick a configurar la base de datos de Firestore y a importar los datos de prueba de clientes. Primero, habilita Firestore en tu proyecto.
Regresa a la consola de Cloud y haz clic en el menú de navegación > Firestore.
Haz clic en el botón Crear base de datos.
Haz clic en el botón Modo nativo y, luego, en Continuar.
En Tipo de ubicación, selecciona Región.
Selecciona la región
Espera a que se haya creado la base de datos para continuar.
Haz clic en Revisar mi progreso para verificar la realización de la tarea indicada arriba.
Vuelve a cargar el navegador de la consola de Cloud para ver los resultados de Firestore.
Buen trabajo. La base de datos de Firestore se creó y completó con datos de prueba correctamente.
Ruby, asesora de software |
Hola Lily: Una actualización rápida: Patrick y yo completamos las primeras dos tareas de la lista. Ahora, comenzaré a estructurar la API de REST para que pueda acceder a los datos de clientes en Firestore. Ruby |
Liliana, fundadora de Pet Theory |
Hola Ruby: Buen trabajo. Espero que la próxima etapa se ponga en marcha pronto. Lily |
En esta sección, ayudarás a Ruby a crear otro extremo en la API de REST, que se verá de la siguiente manera:
Por ejemplo, esa URL debería mostrar la cantidad total de tratamientos propuestos, aceptados y rechazados para el cliente con el ID 22530, si existe en la base de datos de Firestore:
Esta nueva funcionalidad requiere un paquete para acceder a la base de datos de Firestore y otro para controlar el uso compartido de recursos entre dominios (CORS).
main.go
en el directorio pet-theory/lab08.PROJECT_ID
esté configurado como Haz clic en Revisar mi progreso para verificar el objetivo.
/v1
al final). Actualízala y asegúrate de recibir el mismo mensaje que antes. Esto significa que el estado de la API aún es activo./customer/22530
a la URL de la aplicación en la barra de direcciones de tu navegador. Deberías obtener esta respuesta JSON, con una lista de la suma total de los tratamientos propuestos, aprobados y rechazados del cliente:Compilaste una API de REST sin servidores, escalable y con mantenimiento bajo que lee de una base de datos.
¡Felicitaciones! En este lab, ayudaste a Ruby y Patrick a crear de forma correcta el prototipo de una API de REST para Pet Theory. Creaste una API de REST que se conecta a una base de datos de Firestore y la implementaste en Cloud Run. También probaste la API para asegurarte de que funcionara según lo esperado.
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 6 de mayo de 2024
Prueba más reciente del lab: 6 de mayo de 2024
Copyright 2025 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