Se la tua app deve leggere e scrivere file durante il runtime o pubblicare file come film, 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 i primi 5 GB di spazio di archiviazione gratuitamente 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 gratuiti.
Uso di Cloud Storage con App Engine
Per utilizzare un bucket Cloud Storage da un'app App Engine:
Visualizza i nomi dei bucket esistenti nel tuo progetto App Engine. Specificherai 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 della tua app anziché codificarli nell'app.
Nella tua app, dichiara Cloud Storage come dipendenza procedendo nel seguente modo:
Vai
Utilizzo del comando
go get cloud.google.com/go/storage. In alternativa, puoi dichiarare le dipendenze nel filego.moddella tua app. Scopri di più sulla specifica delle dipendenze.Utilizza la libreria client di Google Cloud per caricare o scaricare dati dai tuoi bucket.
Per informazioni sulla pubblicazione di contenuti statici, vedi Archiviazione e pubblicazione di file statici.
Java
Aggiungi la libreria al file delle dipendenze della tua app.
Utilizza la libreria client di Google Cloud per caricare o scaricare dati dai tuoi bucket.
Per informazioni sulla pubblicazione di contenuti statici, vedi Archiviazione e pubblicazione di file statici.
Node.js
In
app.yaml, aggiungi l'ID progetto al valore dell'ambienteGOOGLE_CLOUD_PROJECT. Quindi imposta il valore dell'ambienteGCLOUD_STORAGE_BUCKETsul nome del bucket Cloud Storage che hai creato in precedenza.Aggiungi
@google-cloud/storageal filepackage.jsondell'app. Scopri di più sulla specifica delle dipendenze.Utilizza la libreria client di Google Cloud per caricare o scaricare dati dai tuoi bucket.
Per informazioni sulla pubblicazione di contenuti statici, vedi Archiviazione e pubblicazione di file statici.
Consulta il file
README.mdper istruzioni sull'esecuzione e sul test in locale.PHP
Aggiungi
google/cloud-storageal filecomposer.jsondell'app ed eseguicomposer installdalla directory dell'app. Scopri di più sulla specifica delle dipendenze.Registra
Google\Cloud\Storage\StorageClientcome wrapper di flusso per la tua app. Poi utilizza il protocollogsper leggere e scrivere file.Vedi un esempio di registrazione e utilizzo del wrapper del flusso.
In alternativa, puoi utilizzare direttamente la libreria client di Google Cloud.
Python
Aggiungi
google-cloud-storageal filerequirements.txtdell'app. Scopri di più sulla specifica delle dipendenze.Utilizza la libreria client di Google Cloud per caricare o scaricare dati dai tuoi bucket.
Per informazioni sulla pubblicazione di contenuti statici, vedi Archiviazione e pubblicazione di file statici.
Ruby
Aggiungi
google-cloud-storagealGemfiledella tua app. Scopri di più sulla specifica delle dipendenze.Utilizza la libreria client di Google Cloud per caricare o scaricare dati dai tuoi bucket.
Per informazioni sulla pubblicazione di contenuti statici, vedi 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. Per ulteriori dettagli, consulta la pagina Prezzi, quote e limiti. Ti verrà addebitato 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 anche un bucket che utilizza per l'archiviazione temporanea quando esegue il deployment di nuove versioni dell'app. Questo bucket, denominato staging.project-id.appspot.com, è destinato all'uso esclusivo di App Engine. Le app non possono interagire con questo bucket.
Imposta autorizzazioni bucket
Il account di servizio associato alla tua app deve disporre delle autorizzazioni per leggere e scrivere nei bucket del tuo progetto. Per scoprire quali autorizzazioni sono richieste, consulta Ruoli IAM per Cloud Storage.
In genere, il account di servizio associato alla tua app è il service account App Engine predefinito.
A seconda della configurazione della policy dell'organizzazione, al service account predefinito potrebbe
essere assegnato automaticamente il ruolo Editor nel
progetto. Ti consigliamo vivamente di disattivare la concessione automatica dei ruoli
forzando l'applicazione del vincolo iam.automaticIamGrantsForDefaultServiceAccounts della policy
dell'organizzazione. Se hai creato la tua organizzazione dopo il 3 maggio 2024, questo
vincolo viene imposto per impostazione predefinita.
Se disattivi la concessione automatica dei ruoli, devi decidere quali ruoli concedere ai service account predefiniti, quindi concedere personalmente questi ruoli.
Se il service account predefinito dispone già del ruolo Editor, ti consigliamo di sostituire il ruolo Editor con ruoli meno permissivi.Per modificare in sicurezza i ruoli del service account, utilizza Policy Simulator per vedere l'impatto della modifica, quindi concedi e revoca i ruoli appropriati.
Per informazioni su come consentire ad altri utenti, app o progetti di accedere a un bucket e ai relativi contenuti, vedi Impostare le autorizzazioni del 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 Cloud Storage devono essere inviate su internet a un bucket Cloud Storage effettivo.
Prezzi, quote e limiti
Non vengono addebitati costi per la larghezza di banda associati alle chiamate della libreria client di Cloud Storage a Cloud Storage. Tuttavia, sono previsti costi operativi. Inoltre, le chiamate vengono conteggiate ai fini della quota di recupero URL in quanto la libreria utilizza il servizio di recupero URL per interagire con Cloud Storage.
Tieni presente che Cloud Storage è un servizio a pagamento; ti verrà addebitato un costo in base al listino prezzi di Cloud Storage.