Escribe y prueba localmente un servicio web que sirva un archivo HTML estático con Flask. A continuación, crea los archivos de configuración que necesites para desplegar el servicio web en App Engine.
En este paso, creará y probará localmente una versión de un servicio web que muestra datos de marcador de posición. El objetivo es asegurarse de que el servicio web básico funciona antes de añadir Datastore y la autenticación de Firebase.
Antes de empezar
Si aún no has creado un Google Cloud proyecto, crea un Google Cloud proyecto.
Si aún no lo has hecho, configura tu entorno local para el desarrollo de Python 3 siguiendo estos pasos:
Descarga e instala Python 3 para desarrollar tu servicio web y ejecutar la CLI de Google Cloud.
Usa tus Google Cloud credenciales de usuario para autenticarte con la CLI de Google Cloud y habilitar las pruebas locales con Datastore:
gcloud auth application-default login
Estructurar los archivos de un servicio web
El directorio del proyecto en el que 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 muestra un ejemplo de cómo configurar los archivos en el directorio de tu proyecto.
Escribir un servicio web
La primera iteración de tu servicio web usa Flask para servir una plantilla HTML basada en Jinja.
Para configurar tu servicio web, sigue estos pasos:
Crea tu archivo
templates/index.html
:Añade comportamientos y estilos con archivos
static/script.js
ystatic/style.css
:En el archivo
main.py
, usa Flask para renderizar tu plantilla HTML con los datos de marcador de posición:Configura todas las dependencias que necesites para tu servicio web en el archivo
requirements.txt
:
Probar un servicio web
Prueba tu servicio web ejecutándolo de forma local en un entorno virtual:
Mac OS / Linux
- Crea un entorno de Python aislado:
python3 -m venv env
source env/bin/activate
- Si no estás en el directorio que contiene el código de ejemplo, ve al directorio que contiene el código de ejemplo
hello_world
. A continuación, instala las dependencias:cd YOUR_SAMPLE_CODE_DIR
pip install -r requirements.txt
- Ejecuta la aplicación:
python main.py
- Introduce la siguiente dirección en el navegador web:
http://localhost:8080
Windows
Usa PowerShell para ejecutar tus paquetes de Python.
- Busca tu instalación de PowerShell.
- Haz clic con el botón derecho en el acceso directo a PowerShell y ejecútalo como administrador.
- Crea un
entorno de Python aislado.
python -m venv env
.\env\Scripts\activate
- Ve al directorio de tu proyecto e instala las dependencias. Si no estás en el directorio que contiene el código de ejemplo, ve al directorio que contiene el
hello_world
código de ejemplo. A continuación, instala las dependencias:cd YOUR_SAMPLE_CODE_DIR
pip install -r requirements.txt
- Ejecuta la aplicación:
python main.py
- Introduce la siguiente dirección en el navegador web:
http://localhost:8080
Configurar el servicio web para App Engine
Para desplegar tu servicio web en App Engine, necesitas un archivo app.yaml
.
Este archivo de configuración define los ajustes de tu servicio web para App Engine.
Para configurar tu servicio web para el despliegue en App Engine, crea el archivo app.yaml
en el directorio raíz de tu proyecto, por ejemplo, building-an-app
:
Ten en cuenta que, en este sencillo servicio web, tu archivo app.yaml
solo necesita definir el ajuste del tiempo de ejecución y los controladores de los archivos estáticos.
En el caso de los servicios web más complejos, puedes configurar ajustes adicionales en tu app.yaml
, como el escalado, los controladores adicionales y otros elementos de la aplicación, como las variables de entorno y los nombres de servicio.
Para obtener más información y ver una lista de todos los elementos admitidos, consulta la referencia de app.yaml
.
Pasos siguientes
Ahora que ha configurado, creado y probado su servicio web, puede implementar esta versión en App Engine.