Utilizza Cloud Storage

Se la tua app deve leggere e scrivere file durante il runtime o pubblicare file come filmati, immagini o altri contenuti statici, ti consigliamo di utilizzare un bucket Cloud Storage.

App Engine crea un bucket predefinito quando crei un'app. Questo bucket fornisce gratuitamente i primi 5 GB di spazio di archiviazione e include una quota gratuita per le operazioni di I/O di Cloud Storage. Puoi creare altri bucket Cloud Storage, ma solo il bucket predefinito include i primi 5 GB di spazio di archiviazione gratuitamente.

Uso di Cloud Storage con App Engine

Per utilizzare un bucket Cloud Storage da un'app App Engine:

  1. Visualizza i nomi dei bucket esistenti nel progetto App Engine. Puoi specificare questi nomi quando carichi o scarichi i dati da Cloud Storage.

    Ti consigliamo di archiviare i nomi dei bucket Cloud Storage nelle variabili di ambiente dell'app, anziché doverli codificare nell'app.

  2. Nella tua app, dichiara Cloud Storage come dipendenza, seguendo questi passaggi:

    Go

    Utilizzando il comando go get cloud.google.com/go/storage. In alternativa, puoi dichiarare le dipendenze nel file go.mod dell'app. Scopri di più su come specificare le dipendenze.

    Utilizza la libreria client di Google Cloud per caricare o scaricare i dati dai bucket.

    Per informazioni sulla pubblicazione di contenuti statici, consulta la sezione Archiviazione e pubblicazione di file statici.

    Java

    Aggiungi la libreria al file delle dipendenze dell'app.

    Utilizza la libreria client di Google Cloud per caricare o scaricare i dati dai bucket.

    Per informazioni sulla pubblicazione di contenuti statici, consulta la sezione Archiviazione e pubblicazione di file statici.

    Node.js

    In app.yaml, aggiungi l'ID progetto al valore di ambiente GOOGLE_CLOUD_PROJECT. Quindi imposta il valore di ambiente GCLOUD_STORAGE_BUCKET sul nome del bucket Cloud Storage creato in precedenza.

    Aggiungi @google-cloud/storage al file package.json dell'app. Scopri di più su come specificare le dipendenze.

    Utilizza la libreria client di Google Cloud per caricare o scaricare i dati dai bucket.

    Per informazioni sulla pubblicazione di contenuti statici, consulta la sezione Archiviazione e pubblicazione di file statici.

    Consulta il file README.md per istruzioni sull'esecuzione e il test in locale.

    PHP

    Aggiungi google/cloud-storage al file composer.json della tua app ed è in esecuzione composer install dalla directory dell'app. Scopri di più su come specificare le dipendenze.

    Registra Google\Cloud\Storage\StorageClient come wrapper del flusso per la tua app. Quindi, utilizza il protocollo gs per leggere e scrivere file.

    Vedi un esempio di registrazione e utilizzo del wrapping di flussi.

    In alternativa, puoi utilizzare direttamente la libreria client Google Cloud.

    Python

    Aggiungi google-cloud-storage al file requirements.txt dell'app. Scopri di più su come specificare le dipendenze.

    Utilizza la libreria client di Google Cloud per caricare o scaricare i dati dai bucket.

    Per informazioni sulla pubblicazione di contenuti statici, consulta la sezione Archiviazione e pubblicazione di file statici.

    Ruby

    Aggiungi google-cloud-storage a Gemfile dell'app. Scopri di più su come specificare le dipendenze.

    Utilizza la libreria client di Google Cloud per caricare o scaricare i dati dai bucket.

    Per informazioni sulla pubblicazione di contenuti statici, consulta la sezione Archiviazione e pubblicazione di file statici.

Utilizzo del bucket predefinito

Quando crei un'app, App Engine crea un bucket predefinito che fornisce gratuitamente i primi 5 GB di spazio di archiviazione. Il bucket predefinito include anche una quota gratuita per le operazioni di I/O di Cloud Storage. Consulta Prezzi, quote e limiti per i dettagli. Ti verrà addebitato l'importo per lo spazio di archiviazione che supera il limite di 5 GB.

Il nome del bucket predefinito ha il seguente formato:

project-id.appspot.com

App Engine crea inoltre un bucket per l'archiviazione temporanea quando esegue il deployment di nuove versioni dell'applicazione. Il bucket denominato staging.project-id.appspot.com è destinato esclusivamente all'utilizzo da parte di App Engine. Le app non possono interagire con questo bucket.

Imposta le autorizzazioni del bucket

L'account di servizio predefinito associato alla tua app dispone di tutte le autorizzazioni necessarie per leggere e scrivere nei bucket del tuo progetto.

Per gestire queste autorizzazioni, ogni app App Engine utilizza un account di servizio predefinito che concede l'accesso completo in lettura e scrittura ai bucket Cloud Storage nello stesso progetto dell'app. Puoi modificare le autorizzazioni dell'account di servizio predefinito, ma la tua app potrebbe perdere l'accesso a meno che non assegni un ruolo IAM con le autorizzazioni richieste.

Per informazioni su come consentire ad altri utenti, app o progetti di accedere a un bucket e ai suoi contenuti, consulta Impostare le autorizzazioni dei bucket.

Utilizzo di Cloud Storage con il server di sviluppo locale

Il server di sviluppo locale di App Engine non emula Cloud Storage, quindi tutte le richieste di Cloud Storage devono essere inviate tramite Internet a un bucket Cloud Storage effettivo.

Prezzi, quote e limiti

Alle chiamate delle librerie client di Cloud Storage a Cloud Storage non sono previsti costi per la larghezza di banda. Tuttavia, sono previsti addebiti relativi alle operazioni. Inoltre, le chiamate vengono conteggiate ai fini della quota di recupero degli URL, poiché la libreria utilizza il servizio di recupero URL per interagire con Cloud Storage.

Tieni presente che Cloud Storage è un servizio a pagamento; ti verranno addebitati i costi in base al listino prezzi di Cloud Storage.