Introducción a App Engine
Google App Engine es una plataforma como servicio (PaaS) que permite a los desarrolladores construir y desplegar aplicaciones en la infraestructura de Google. App Engine gestiona automáticamente la infraestructura subyacente, permitiendo a los desarrolladores centrarse en escribir código.
Características Clave de App Engine
- Escalado automático: App Engine ajusta automáticamente la cantidad de recursos asignados a tu aplicación en función de la demanda.
- Entorno gestionado: Proporciona un entorno gestionado que incluye actualizaciones automáticas y parches de seguridad.
- Compatibilidad con múltiples lenguajes: Soporta varios lenguajes de programación como Python, Java, Node.js, Go, PHP, y Ruby.
- Integración con otros servicios de GCP: Se integra fácilmente con otros servicios de Google Cloud como Cloud SQL, Cloud Storage, y BigQuery.
Configuración Inicial
Paso 1: Crear un Proyecto en GCP
- Accede a la Consola de Google Cloud.
- Haz clic en el menú desplegable de proyectos y selecciona "Nuevo Proyecto".
- Asigna un nombre a tu proyecto y haz clic en "Crear".
Paso 2: Habilitar App Engine
- En la consola de GCP, navega a "App Engine" en el menú de navegación.
- Haz clic en "Crear aplicación".
- Selecciona la región donde deseas desplegar tu aplicación y haz clic en "Siguiente".
Paso 3: Instalar Google Cloud SDK
Para interactuar con App Engine desde tu máquina local, necesitarás instalar el Google Cloud SDK.
# Descargar e instalar Google Cloud SDK curl https://sdk.cloud.google.com | bash # Inicializar el SDK gcloud init
Desplegar una Aplicación en App Engine
Paso 1: Crear una Aplicación de Ejemplo
Vamos a crear una simple aplicación en Python que responde con "Hello, World!".
- Crea un directorio para tu proyecto y navega a él:
- Crea un archivo
main.py
con el siguiente contenido:
import webapp2 class MainPage(webapp2.RequestHandler): def get(self): self.response.headers['Content-Type'] = 'text/plain' self.response.write('Hello, World!') app = webapp2.WSGIApplication([ ('/', MainPage), ], debug=True)
- Crea un archivo
app.yaml
para configurar tu aplicación:
Paso 2: Desplegar la Aplicación
- Autentícate en tu cuenta de Google Cloud:
- Despliega tu aplicación en App Engine:
- Visita la URL proporcionada para ver tu aplicación en acción.
Ejercicios Prácticos
Ejercicio 1: Modificar la Aplicación
Modifica la aplicación para que responda con "Hello, [tu nombre]!" en lugar de "Hello, World!".
Solución
- Edita el archivo
main.py
:
import webapp2 class MainPage(webapp2.RequestHandler): def get(self): self.response.headers['Content-Type'] = 'text/plain' self.response.write('Hello, [tu nombre]!') app = webapp2.WSGIApplication([ ('/', MainPage), ], debug=True)
- Despliega nuevamente la aplicación:
Ejercicio 2: Añadir una Nueva Ruta
Añade una nueva ruta /goodbye
que responda con "Goodbye, World!".
Solución
- Edita el archivo
main.py
:
import webapp2 class MainPage(webapp2.RequestHandler): def get(self): self.response.headers['Content-Type'] = 'text/plain' self.response.write('Hello, [tu nombre]!') class GoodbyePage(webapp2.RequestHandler): def get(self): self.response.headers['Content-Type'] = 'text/plain' self.response.write('Goodbye, World!') app = webapp2.WSGIApplication([ ('/', MainPage), ('/goodbye', GoodbyePage), ], debug=True)
- Despliega nuevamente la aplicación:
Conclusión
En esta sección, hemos aprendido los conceptos básicos de Google App Engine, cómo configurar un proyecto, y cómo desplegar una aplicación simple. También hemos practicado modificando la aplicación y añadiendo nuevas rutas. En el siguiente módulo, exploraremos otros servicios principales de GCP que pueden integrarse con App Engine para construir aplicaciones más robustas y escalables.
Curso de Google Cloud Platform (GCP)
Módulo 1: Introducción a Google Cloud Platform
- ¿Qué es Google Cloud Platform?
- Configuración de tu cuenta de GCP
- Descripción general de la consola de GCP
- Comprensión de proyectos y facturación
Módulo 2: Servicios principales de GCP
Módulo 3: Redes y seguridad
Módulo 4: Datos y análisis
Módulo 5: Aprendizaje automático e IA
Módulo 6: DevOps y monitoreo
- Cloud Build
- Repositorios de código en la nube
- Cloud Functions
- Monitoreo de Stackdriver
- Cloud Deployment Manager
Módulo 7: Temas avanzados de GCP
- Híbrido y multi-nube con Anthos
- Computación sin servidor con Cloud Run
- Redes avanzadas
- Mejores prácticas de seguridad
- Gestión y optimización de costos