Usa Cloud Storage

Si tu app de Python 3 necesita leer y escribir archivos en el entorno de ejecución, o entregar archivos, como películas, imágenes o contenido estático, te recomendamos usar un bucket de Cloud Storage.

Cuando creas una aplicación, App Engine crea un bucket predeterminado. Este bucket proporciona los primeros 5 GB de forma gratuita, y también incluye una cuota gratis para las operaciones de E/S. Puedes crear otros depósitos de Cloud Storage, pero solo el predeterminado incluye de forma gratuita los primeros 5 GB de almacenamiento.

Cómo usar Cloud Storage con App Engine

Para usar un bucket de Cloud Storage desde una aplicación de App Engine, realiza los siguientes pasos:

  1. Visualiza los nombres de los depósitos existentes en tu proyecto de App Engine. Deberás especificar estos nombres cuando subas datos a Cloud Storage o los descargues.

    Te recomendamos almacenar los nombres de tus buckets de Cloud Storage en las variables de entorno de la app, en lugar de programarlos en tu app.

  2. Declara Cloud Storage como una dependencia en la app. Para ello, agrega google-cloud-storage al archivo requirements.txt de la app. Obtén más información sobre cómo especificar dependencias.

  3. Usa la biblioteca cliente de Google Cloud para subir o descargar datos de tus buckets.

    Para obtener información sobre cómo entregar contenido estático, consulta la sección sobre almacenamiento y entrega de archivos estáticos.

Usa el bucket predeterminado

Cuando creas una aplicación, App Engine crea un bucket predeterminado que te ofrece los primeros 5 GB de almacenamiento sin costo. El bucket predeterminado también incluye una cuota gratuita para operaciones de E/S de Cloud Storage. Consulta Precios, cuotas y límites para obtener más detalles. Se te cobrará por el almacenamiento que supere los 5 GB.

El nombre del bucket predeterminado tendrá el siguiente formato:

project-id.appspot.com

Además, App Engine crea un bucket que usa para almacenamiento temporal cuando implementa versiones nuevas de tu aplicación. Este bucket, llamado staging.project-id.appspot.com, es para uso único de App Engine. Las aplicaciones no pueden interactuar con este bucket.

Cómo configurar permisos de depósitos y objetos

La cuenta de servicio predeterminada asociada con tu app tiene todos los permisos necesarios para leer y escribir en los buckets de tu proyecto.

Para administrar estos permisos, cada aplicación de App Engine usa una cuenta de servicio predeterminada que le brinda acceso completo de lectura y escritura a los buckets de Cloud Storage del mismo proyecto que la aplicación. Puedes cambiar los permisos de la cuenta de servicio predeterminada, pero es posible que la app pierda el acceso, a menos que asignes una función de IAM con los permisos requeridos.

Para obtener más información sobre cómo darle acceso a otros usuarios, aplicaciones o proyectos a un bucket y sus contenidos, consulta las páginas Configura los permisos del bucket y Configura los permisos de objetos.

Cómo usar Cloud Storage con el servidor de desarrollo local

El servidor de desarrollo local de App Engine no emula a Cloud Storage, por lo que todas las solicitudes de Cloud Storage deben enviarse por Internet a un bucket de Cloud Storage real.

Precios, cuotas y límites

No existen cargos de ancho de banda asociados con las llamadas de la biblioteca cliente de Cloud Storage a Cloud Storage. Sin embargo, sí se aplican cargos por operaciones. Además, las llamadas se imputarán a la cuota de recuperación de URL, ya que la biblioteca usa el servicio de recuperación de URL para interactuar con Cloud Storage.

Ten en cuenta que Cloud Storage es un servicio de pago por uso. Se te cobrará de acuerdo con la hoja de precios de Cloud Storage.