Escribe y prueba de forma local un servicio web que entregue un archivo HTML estático con Flask. Luego, crea los archivos de configuración que necesitas para implementar el servicio web en App Engine.
En este paso, crearás y probarás localmente una versión de un servicio web que muestra datos de marcador de posición. El objetivo aquí es garantizar que el servicio web básico esté funcionando antes de agregar la autenticación de Datastore y Firebase.
Antes de comenzar
Si aún no creaste un proyecto de Google Cloud, crea uno.
Si aún no lo has hecho, configura tu entorno local para el desarrollo con Python 3 de la siguiente manera:
Descarga y, luego, instala Python 3 para desarrollar tu servicio web y ejecutar Google Cloud CLI.
Usa tus credenciales de usuario de Google Cloud para autenticarte con Google Cloud CLI y habilitar las pruebas locales con Datastore:
gcloud auth application-default login
Estructura los archivos del servicio web
El directorio del proyecto donde crees tu servicio web tendrá la siguiente estructura de archivos:
building-an-app/
app.yaml
main.py
requirements.txt
static/
script.js
style.css
templates/
index.html
En las siguientes secciones, se proporciona un ejemplo de cómo configurar los archivos en el directorio de tu proyecto.
Escribir tu servicio web
La iteración inicial de tu servicio web utiliza Flask a fin de entregar una plantilla HTML basada en Jinja.
Para configurar tu servicio web, sigue estos pasos:
Crea tu archivo
templates/index.html
:Agrega comportamientos y estilos con los archivos
static/script.js
ystatic/style.css
:En tu archivo
main.py
, utiliza Flask para generar la plantilla HTML con los datos del marcador de posición:Configura todas las dependencias que necesitarás para el servicio web en tu archivo
requirements.txt
:
Prueba tu servicio web
Para probar un servicio web, ejecútalo de forma local en un entorno virtual:
macOS/Linux
- Crea un entorno aislado de Python:
python3 -m venv env
source env/bin/activate
- Si no estás en el directorio que contiene el código de muestra, navega al directorio que contiene el código de muestra
hello_world
. Luego, instala las dependencias:cd YOUR_SAMPLE_CODE_DIR
pip install -r requirements.txt
- Ejecute la aplicación:
python main.py
- En el navegador web, ingresa la siguiente dirección:
http://localhost:8080
Windows
Usa PowerShell para ejecutar tus paquetes de Python.
- Ubica la instalación de PowerShell.
- Haz clic derecho en el acceso directo a PowerShell y, luego, inícialo como administrador.
- Crea un entorno de Python aislado.
python -m venv env
.\env\Scripts\activate
- Navegue al directorio del proyecto y luego instale las dependencias. Si no estás en el directorio que contiene el código de muestra, navega al directorio que contiene el código de muestra
hello_world
. Luego, instala las dependencias:cd YOUR_SAMPLE_CODE_DIR
pip install -r requirements.txt
- Ejecute la aplicación:
python main.py
- En el navegador web, ingresa la siguiente dirección:
http://localhost:8080
Configura tu servicio web para App Engine
Para implementar tu servicio web en App Engine, necesitas un archivo app.yaml
.
Este archivo de configuración define la configuración de tu servicio web para App Engine.
Para configurar tu servicio web para la implementación en App Engine, crea tu archivo app.yaml
en el directorio raíz de tu proyecto, por ejemplo building-an-app
:
Ten en cuenta que, para este servicio web simple, el archivo app.yaml
debe definir solo la configuración del entorno de ejecución y los controladores para archivos estáticos.
Para servicios web más complicados, puedes configurar ajustes adicionales en tu archivo app.yaml
, como escalamiento, controladores adicionales y otros elementos de aplicaciones, por ejemplo, variables del entorno y nombres de servicio.
Para obtener más información y una lista de todos los elementos compatibles, consulta la referencia de app.yaml
.
Próximos pasos
Ahora que has configurado, creado y probado tu servicio web, puedes implementar esta versión del servicio web en App Engine.