Utilizzo di Cloud Storage

Se l'app Go 1.11 ha bisogno di leggere e scrivere file durante il runtime, o pubblicare file come filmati, immagini o altri contenuti statici, ti consigliamo utilizza 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 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 tuo progetto App Engine. Dovrai specificare questi nomi quando caricare o scaricare dati da Cloud Storage.

    Ti consigliamo di memorizzare i nomi dei bucket Cloud Storage nelle variabili di ambiente dell'app anziché codificarli in modo rigido nell'app.

  2. Nella tua app, dichiara Cloud Storage come dipendenza usando 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.

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

    Per informazioni sulla pubblicazione di contenuti statici, consulta Archiviazione e pubblicazione. Static Files.

Utilizzo del bucket predefinito

Quando crei un'app, App Engine crea un bucket predefinito che fornisce i primi 5 GB di spazio di archiviazione gratuitamente. Il bucket predefinito include anche una quota gratuita per le operazioni di Cloud Storage I/O. Per ulteriori dettagli, consulta la pagina Prezzi, quote e limiti. Potrai se supera il limite di 5 GB non ti verrà addebitato alcun importo.

Il nome del bucket predefinito ha il seguente formato:

project-id.appspot.com

App Engine crea anche un bucket che utilizza per di archiviazione quando esegue il deployment di nuove versioni dell'app. Questo bucket, denominato staging.project-id.appspot.com, è destinato all'uso da parte di App Engine. Le app non possono interagire con questo bucket.

Impostazione delle autorizzazioni per bucket e oggetti

L'account di servizio associato alla tua app richiede le autorizzazioni di lettura e scrivere nei bucket del tuo progetto. Per sapere quali sono le autorizzazioni necessarie, vedi Ruoli IAM per Cloud Storage.

In genere, l'account di servizio associato alla tua app è l'account predefinito Servizio App Engine Google Cloud.

A seconda della configurazione dei criteri dell'organizzazione, l'account di servizio predefinito potrebbe automaticamente il ruolo Editor progetto. Ti consigliamo vivamente di disabilitare la concessione automatica del ruolo entro il giorno applicazione del criterio dell'organizzazione iam.automaticIamGrantsForDefaultServiceAccounts di blocco. Se hai creato la tua organizzazione dopo il 3 maggio 2024, questo vincolo viene applicato per impostazione predefinita.

Se disabiliti la concessione automatica del ruolo, devi decidere quali ruoli concedere a quelli predefiniti account di servizio e poi concedi ruoli.

Se l'account di servizio predefinito ha già il ruolo Editor, ti consigliamo di sostituire il valore Ruolo di Editor con ruoli meno permissivi. Per modificare in sicurezza i ruoli dell'account di servizio, 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 i suoi contenuti, vedi Impostare le autorizzazioni del bucket e Impostazione delle autorizzazioni per gli oggetti.

Utilizzo di Cloud Storage con il server di sviluppo locale

Il server di sviluppo locale 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

Non sono previsti costi per la larghezza di banda associati alla libreria client di Cloud Storage a Cloud Storage. Tuttavia, sono previste commissioni operative. Inoltre, le chiamate vengono conteggiate ai fini 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 per utilizzo; ti verrà addebitato l'importo in base al listino prezzi di Cloud Storage.