Curso de Google App Engine

Hola mundo en App Engine

Curso de Google App Engine

Contenido del curso

Hola mundo en App Engine

Platzi DayPlatzi Day

Todos los cursos GRATIS

Se acaba en:
:::

Resumen

Crear y publicar un Hola Mundo en la nube puede ser simple y rápido si dominas los conceptos clave. Aquí verás, paso a paso y sin rodeos, cómo hacerlo con Python 2.7, Webapp2 y App Engine estándar, aprovechando su capa gratuita y el SDK de Google Cloud para un flujo ágil de desarrollo y despliegue.

¿Qué tecnologías y entorno se usan para el hola mundo?

Trabajarás con App Engine estándar (no flexible) porque el ejemplo es pequeño y usa Python 2.7 con Webapp2, un microframework similar a Flask y Django. El SDK ya trae librerías, así que no necesitas entorno virtual. Puedes usar el editor que prefieras: Atom, Sublime o incluso bloc de notas.

  • Tecnologías: Python 2.7, Webapp2, App Engine estándar.
  • Archivos mínimos: main.py y app.yaml.
  • Enfoque: microframework y contenido de texto plano para la respuesta.
  • Buenas prácticas: nombres y comentarios en inglés para código más estándar.
  • Puertos locales: 8080 para la app y 8000 para el módulo de administración.
  • Depuración: activar debug para recarga automática y ver errores 500 en consola.

¿Cómo se programa el manejador web y el enrutamiento?

Primero defines una clase que hereda de RequestHandler y atiende el método GET. La respuesta será texto plano con “Hola Mundo”. Luego creas la aplicación WCGI de Webapp2 y enrutas la raíz “/” a esa clase. Con debug=True podrás corregir rápido errores de sintaxis y ver los cambios sin reiniciar.

¿Cómo luce el archivo main.py?

# main.py import os import urllib import webapp2 class MainPage(webapp2.RequestHandler): def get(self): # Returns plain text response. self.response.headers['Content-Type'] = 'text/plain' self.response.write('Hola Mundo') app = webapp2.WSGIApplication([ ('/', MainPage), ], debug=True)

Puntos clave del flujo:

  • Clase manejadora: MainPage con método get.
  • Respuesta: text/plain con el mensaje Hola Mundo.
  • App WCGI: lista de rutas que mapea “/” a la clase.
  • Depuración: debug=True para recarga y trazas inmediatas.

¿Cómo se configura app.yaml y se despliega con gcloud?

App Engine requiere un archivo de configuración mínimo para saber el runtime, la versión de API, si aceptará solicitudes simultáneas y qué handlers atenderán las URLs. Luego pruebas en local y finalmente haces deploy con gcloud, eligiendo la región y publicando en la URL por defecto.

¿Qué contiene app.yaml?

# app.yaml runtime: python27 api_version: 1 threadsafe: true handlers: - url: /.* script: main.app

Claves del archivo:

  • runtime: python27.
  • api_version: 1.
  • threadsafe: true para solicitudes simultáneas.
  • handlers: todo “/.*” va a main.app (la app definida en main.py).

¿Qué comandos se usan para probar y desplegar?

  • Prueba local: correr el servidor incluido en el SDK con el archivo de configuración.
    • Ejemplo: appserver.py app.yaml.
    • App en 8080 y módulo de administración en 8000.
  • Autenticación en la cuenta de Google Cloud:
    • gcloud auth login.
  • Seleccionar el proyecto correcto (usa tu project ID):
    • gcloud config set project PROJECT_ID.
  • Desplegar a App Engine estándar:
    • gcloud app deploy.
  • Elegir región al primer despliegue: por ejemplo, US Central.
  • URL por defecto tras publicar: PROJECT_ID.appspot.com para acceder al Hola Mundo público.

Con esto, tu Hola Mundo queda corriendo primero en local y luego en la nube, con monitoreo básico en el panel de App Engine: servicios, versiones e instancias disponibles para seguir iterando.

¿Tienes dudas o quieres compartir cómo te fue con el despliegue? Escribe tus comentarios y cuéntame qué te gustaría construir después.