Este instructivo está destinado a aquellos que estén comenzando a compilar aplicaciones en la nube, como ingenieros y desarrolladores web, que quieran aprender conceptos clave del desarrollo de aplicaciones y cómo aprovecharlos en Cloud de Confiance by S3NS.
Objetivos
- Aprender sobre las herramientas básicas de Cloud de Confiance , como la consola deCloud de Confiance y
gcloud - Implementar tu app en Cloud Run
- Almacenar tus datos con Firestore
- Almacenar archivos subidos en Cloud Storage
- Supervisa tu app con Google Cloud Observability.
Costos
En este documento, usarás los siguientes componentes facturables de Cloud de Confiance by S3NS:
Las instrucciones de este documento están diseñadas para que el uso de los recursos se mantenga dentro de los límites del nivel Siempre gratuito de Cloud de Confiance.
Cuando completes las tareas que se describen en este documento, podrás borrar los recursos que creaste para evitar que se te siga facturando. Para obtener más información, consulta Realiza una limpieza.
Antes de comenzar
-
In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Cloud de Confiance project.
- Para crear una base de datos de Firestore en modo nativo, sigue los pasos a continuación:
-
En la consola de Cloud de Confiance , ve a la página Crear base de datos de Firestore.
- Desde la pantalla Selecciona un modo de Cloud Firestore, haz clic en Seleccionar modo nativo.
- Selecciona una ubicación para tu base de datos de Firestore. Esta configuración de ubicación es la ubicación de recursos Cloud de Confiance predeterminada para tu proyecto Cloud de Confiance . Esta ubicación se usa para los Cloud de Confiance servicios de tu Cloud de Confiance proyecto que requieren una configuración de ubicación, específicamente, tu bucket predeterminado de Cloud Storage y tu app de Cloud Run.
- Haz clic en Crear base de datos.
-
En la consola de Cloud de Confiance , ve a la página Crear base de datos de Firestore.
-
Enable the Artifact Registry, Cloud Run Admin, Cloud Build, Cloud Storage, Cloud Logging, and Error Reporting APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
Clona el repo de ejemplo y abre la aplicación de ejemplo en Cloud Shell:
Ir a Cloud ShellCloud Shell proporciona acceso de línea de comandos a tus recursos de Cloud de Confiance directamente desde el navegador.
- Para descargar el código de muestra y cambiar al directorio de la app, haz clic en Continuar.
-
En Cloud Shell, configura la herramienta de
gcloudpara que use tu Cloud de Confiance proyecto nuevo:# Configure gcloud for your project gcloud config set project PROJECT_ID
Reemplaza PROJECT_ID por el Cloud de Confiance ID del proyecto que creaste con la Cloud de Confiance consola.
La Google Cloud CLI es la forma principal en la que interactúas con tus recursos de Cloud de Confiance desde la línea de comandos. En este instructivo, usarás la herramienta
gcloudpara implementar y supervisar tu aplicación. -
Compila la app, que descargará las dependencias de forma automática:
go build
- Ejecuta la app:
Reemplaza PROJECT_ID por el ID del proyecto Cloud de Confiance que creaste.GOOGLE_CLOUD_PROJECT=PROJECT_ID ./bookshelf
- En Cloud Shell, haz clic en Vista previa en la Web y selecciona Vista previa en el puerto 8080. Se abrirá una ventana nueva con tu app en ejecución.
Ejecuta tu app
Implementa tu app en Cloud Run
Cloud de Confiance ofrece varias opciones para ejecutar tu código. Para este ejemplo, usa Cloud Run para implementar una app escalable en Cloud de Confiance. Cloud Run no requiere que administres servidores ni se escala de forma automática para admitir los aumentos de tráfico.
- Ejecuta el contenedor con Cloud Run:
gcloud run deploy bookshelf --region us-central1 --allow-unauthenticated \ --set-env-vars="GOOGLE_CLOUD_PROJECT=
PROJECT_ID" --source .Ahora tu app se puede ver en la URL que se muestra en el resultado de
gcloud run:Service [bookshelf] revision [bookshelf-00001] has been deployed and is serving 100 percent of traffic. Service URL: https://bookshelf-swsmmh5s5a-uc.a.run.app
-
Copia la URL a tu navegador web para ver la app.
Para obtener más información sobre la implementación en Cloud Run, consulta la documentación de Cloud Run.
Almacena tus datos con Firestore
No se puede almacenar información en tus instancias de Cloud Run porque se perderá si se reinicia la instancia, además de que no existirá cuando se creen instancias nuevas. En su lugar, usarás una base de datos en la que todas tus instancias puedan leer y escribir.
Cloud de Confiance ofrece varias opciones para almacenar tus datos. En este ejemplo, usarás Firestore para almacenar los datos de cada libro. Firestore es una base de datos de documentos NoSQL, completamente administrada y sin servidores que te permite almacenar y consultar datos. Firestore escala de manera automática para cumplir las necesidades de tu aplicación y escala a cero cuando no la estás usando. Agrega el primer libro:
-
Para crear un libro en tu aplicación implementada, haz clic en Add book (Agregar libro).
- En el campo Title, ingresa
Moby Dick. - En el campo Author, ingresa
Herman Melville. -
Haz clic en Save. Ya tienes una entrada en la aplicación Bookshelf.
-
En la consola de Cloud de Confiance , haz clic en Actualizar refresh para actualizar la página de Firestore.
Los datos aparecen en Firestore. La aplicación Bookshelf almacena cada libro como un documento de Firestore con un ID único, y todos estos documentos se almacenan en una colección de Firestore.
Para los propósitos de este instructivo, la colección se llama “books”.
Firestore almacena los libros mediante la biblioteca cliente de Firestore. Aquí hay un ejemplo de recuperación de un documento de Firestore:
Para obtener más información sobre el uso de Firestore, consulta cómo agregar datos a Firestore.
Almacena archivos subidos en Cloud Storage
Ahora que agregaste un libro, es momento de agregar su imagen de portada. No puedes almacenar archivos en tus instancias. Una base de datos no es la opción correcta para archivos de imagen. En cambio, debes usar Cloud Storage.
Cloud Storage es el almacenamiento de BLOB principal de Cloud de Confiance. Puedes usar Cloud Storage para alojar los recursos de la app que quieras compartir en Cloud de Confiance. Para usar Cloud Storage, debes crear un bucket de Cloud Storage, un contenedor básico en el que se guardan tus datos.
- En la Cloud de Confiance consola, ve a la página Navegador de Cloud Storage.
- Haz clic en Crear bucket.
- En el cuadro de diálogo Crear bucket, adjunta el ID del proyecto Cloud de Confiance a la cadena
_bucketpara ingresar un nombre del bucket, de manera que sea similar aYOUR_PROJECT_ID_bucket. Este nombre está sujeto a los requisitos de nombres de los buckets. En el resto de los campos, se pueden conservar los valores predeterminados. - Haz clic en Crear.
- Una vez que se haya creado el bucket, debe permitirse el acceso público a los objetos para que puedan consultarlos los usuarios. Si quieres permitir el acceso público a tus objetos, consulta el artículo Haz públicos los datos.
-
Haz clic en Edit book y selecciona una imagen para subirla como la portada del libro. Por ejemplo, puedes usar esta imagen de dominio público:
-
Haz clic en Save. Se te redireccionará a la página principal, en la que encontrarás una entrada a la app de Bookshelf.
La app de Bookshelf envía los archivos subidos a Cloud Storage a través de la biblioteca cliente de Cloud Storage.
Para obtener más información sobre cómo usar Cloud Storage, consulta la introducción a Cloud Storage.
Supervisa tu app con Google Cloud Observability
Ya implementaste la app y creaste y modificaste libros. A fin de supervisar estos eventos para los usuarios, usa la administración del rendimiento de las aplicaciones.
Supervisa los registros con Cloud Logging
-
En Cloud de Confiance, ve al Explorador de registros.
Ir al Explorador de registrosPuedes supervisar tu app en tiempo real. Si tienes problemas con tu app, este es uno de los primeros lugares que consultar.
- En la lista desplegable Recursos, selecciona Revisión de Cloud Run, bookshelf.
Controla los errores con Error Reporting
-
En la consola de Cloud de Confiance , ve a la página Error Reporting.
Ir a la página de Error Reporting
Error Reporting destaca los errores y las excepciones en tu app y te permite configurar alertas basadas en ellos. - En el navegador, ve a la URL
/errorsde la app.YOUR_CLOUD_RUN_URL/errors
Esto genera una nueva excepción de prueba y la envía a Google Cloud Observability.
-
En la consola de Cloud de Confiance , regresa a la página de Error Reporting y podrás ver el error nuevo en unos instantes. Haz clic en Volver a cargar automáticamente para no tener que actualizar la página de forma manual.
Limpia
Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.
Borra el proyecto
- In the Cloud de Confiance console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.