Configurar una aplicación con app.yaml

Una aplicación de App Engine se configura mediante un archivo app.yaml, que contiene recursos de CPU, memoria, red y disco, escalado y otros ajustes generales, incluidas las variables de entorno.

Acerca de los archivos app.yaml

Puede especificar la configuración del tiempo de ejecución de su aplicación de Python, incluidas las versiones y las URLs, en el archivo app.yaml. Este archivo actúa como descriptor de implementación de una versión de servicio específica.

Primero debes crear el archivo app.yaml para el servicio default de tu aplicación antes de poder crear e implementar archivos app.yaml para otros servicios.

En el siguiente app.yaml se muestra cómo configurar tu aplicación para que use la versión más reciente de Python. Para usar cualquier otra versión compatible de Python, debes actualizar el archivo app.yaml. Para obtener más información, consulta Entorno de ejecución de Python.

# Copyright 2021 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

runtime: python
env: flex
entrypoint: gunicorn -b :$PORT main:app

runtime_config:
  operating_system: ubuntu22

# This sample incurs costs to run on the App Engine flexible environment.
# The settings below are to reduce costs during testing and are not appropriate
# for production use. For more information, see:
# https://cloud.google.com/appengine/docs/flexible/python/configuring-your-app-with-app-yaml
manual_scaling:
  instances: 1
resources:
  cpu: 1
  memory_gb: 0.5
  disk_size_gb: 10

En función de la complejidad del servicio de tu aplicación, es posible que solo tengas que definir algunos elementos en el archivo app.yaml correspondiente. En el siguiente ejemplo se muestra lo que podría necesitar una aplicación Python sencilla en el entorno flexible:

Puedes especificar un nombre único para tus archivos app.yaml, pero también debes especificar el nombre de archivo con el comando deployment. Por ejemplo, si el archivo app.yaml se llama service-name-app.yaml o app.flexible.yaml, debes desplegar tu aplicación de una de estas dos formas:

gcloud app deploy service-name-app.yaml
gcloud app deploy app.flexible.yaml
Para obtener más información sobre cómo estructurar varios servicios y archivos app.yaml en tu aplicación, consulta Estructurar servicios web.

Todos los elementos de configuración

Para ver una lista completa de todos los elementos admitidos en este archivo de configuración, consulta la referencia de app.yaml.