ID regione
REGION_ID
è un codice abbreviato assegnato da Google in base alla regione selezionata al momento della creazione dell'app. Non corrisponde a un paese o a una provincia, anche se alcuni ID regione possono apparire simili ai codici di paese e provincia di uso comune. Per le app create dopo febbraio 2020, REGION_ID.r
è incluso negli URL di App Engine. Per le app esistenti create prima di questa data, l'ID regione è facoltativo nell'URL.
Scopri di più sugli ID regione.
Scopri come eseguire la tua applicazione localmente, come eseguirne il deployment e come testarla in App Engine.
Esecuzione in locale
Per testare la funzionalità della tua applicazione prima di eseguirne il deployment, eseguila nel tuo ambiente locale con gli strumenti di sviluppo che utilizzi abitualmente.
Prima di eseguire il deployment dell'applicazione
Prima di eseguire il deployment della tua applicazione:
- Il proprietario del progetto Google Cloud deve configurare il progetto Google Cloud per App Engine.
- Devi assicurarti che il tuo account utente includa i privilegi necessari.
Deployment dell'applicazione
Esegui il deployment dell'applicazione in App Engine utilizzando il comando gcloud app deploy
. Durante il deployment, il servizio Cloud Build crea un'immagine container dell'applicazione da eseguire nell'ambiente standard di App Engine.
Ogni build viene eseguita nella stessa regione del progetto Google Cloud. Scopri di più sulla gestione delle immagini build.
Per eseguire il deployment delle app in modo programmatico, utilizza l'API Admin.
Deployment di un servizio
Puoi eseguire il deployment della tua applicazione in App Engine eseguendo il deployment di versioni dei servizi dell'applicazione e di ciascuno dei relativi file di configurazione.
Per eseguire il deployment di una versione del servizio dell'applicazione, esegui questo comando dalla directory in cui si trova il file app.yaml
del tuo servizio:
gcloud app deploy
Se non specifichi nessun file con il comando, viene eseguito solo il deployment del file app.yaml
nella directory attuale. Per impostazione predefinita, il comando deploy
genera un ID univoco per la versione di cui esegui il deployment, ne esegue il deployment nel progetto Google Cloud che hai configurato per l'utilizzo di Google Cloud CLI e instrada tutto il traffico alla nuova versione.
Puoi modificare il comportamento predefinito del comando scegliendo come target file specifici o includendo parametri aggiuntivi:
- Per eseguire il deployment degli altri file di configurazione del servizio, devi scegliere come target ed eseguire il deployment di ogni file separatamente. Ad esempio:
gcloud app deploy cron.yaml gcloud app deploy dispatch.yaml gcloud app deploy index.yaml
- Per specificare un ID versione personalizzato, utilizza il flag
--version
. - Per evitare che il traffico venga instradato automaticamente alla nuova versione, utilizza il flag
--no-promote
. - Per eseguire il deployment in un progetto Google Cloud specifico, utilizza il flag
--project
.
Ad esempio, per eseguire il deployment del servizio definito dal file app.yaml
in un progetto Google Cloud specifico, assegnagli un ID versione personalizzato e impedire il routing del traffico alla nuova versione:
gcloud app deploy --project PROJECT_ID --version VERSION_ID --no-promote
Per ulteriori informazioni su questo comando, consulta il riferimento gcloud app deploy
.
Deployment di più servizi
Devi utilizzare lo stesso comando di deployment per eseguire il deployment o l'aggiornamento di più servizi che costituiscono l'applicazione.
Prima di iniziare:
- Inizialmente, devi eseguire il deployment di una versione della tua applicazione sul servizio
default
prima di poter creare ed eseguire il deployment di servizi successivi. - L'ID di ciascuno dei tuoi servizi deve essere specificato nei file di configurazione
app.yaml
corrispondenti. Per specificare l'ID servizio, includi la definizione dell'elementoservice
in ogni file di configurazione. Per impostazione predefinita, escludendo questa definizione di elemento dal file di configurazione, la versione viene implementata nel serviziodefault
.
Per eseguire il deployment di più servizi, esegui separatamente il deployment del file app.yaml
di ogni servizio. Puoi specificare più file con un singolo comando gcloud app deploy
:
gcloud app deploy service1/app.yaml service2/app.yaml
Visualizzazione dei log di build
Cloud Build trasmette in flussi di log di creazione e deployment i log visualizzabili nella sezione Cronologia build della console Google Cloud. Per visualizzare le build nella regione dell'app, utilizza il menu a discesa Regione nella parte superiore della pagina per scegliere la regione in base alla quale vuoi filtrare i dati.
Gestione delle immagini build
Ogni volta che esegui il deployment di una nuova versione, viene creata un'immagine container utilizzando il servizio Cloud Build. L'immagine container viene creata nell'area geografica dell'app, quindi viene eseguita nell'ambiente standard di App Engine.
Le immagini container create vengono archiviate nella cartella app-engine-tmp/app
in Container Registry. Puoi scaricare queste immagini
per conservarle o eseguirle altrove. Al termine del deployment, App Engine
non ha più bisogno delle immagini container. Tieni presente che non vengono eliminate automaticamente, quindi, per evitare di raggiungere la quota di spazio di archiviazione, puoi eliminare in sicurezza le immagini che non ti servono. Tuttavia, se in futuro potresti aver bisogno delle immagini o vuoi conservarne una copia, dovrai esportarne una copia prima dell'eliminazione. Per ulteriori informazioni sulla gestione delle immagini in Container Registry, consulta la documentazione di Container Registry.
Come ignorare i file
Puoi utilizzare un file .gcloudignore
per specificare i file e le directory che non verranno caricati su App Engine quando esegui il deployment dei servizi. Questa opzione è utile per ignorare gli artefatti delle build e altri file che non devono essere caricati con il deployment.
Visualizzazione dell'applicazione
Dopo aver eseguito il deployment dell'applicazione in App Engine, puoi eseguire questo comando per avviare il browser e visualizzarlo all'indirizzo https://PROJECT_ID.REGION_ID.r.appspot.com
:
gcloud app browse
Test su App Engine prima di spostare il traffico
Prima di configurare una nuova versione per ricevere il traffico, puoi testarla in App Engine. Ad esempio, per testare una nuova versione del tuo servizio default
:
Esegui il deployment della nuova versione, ma evita che il traffico venga instradato automaticamente alla nuova versione:
gcloud app deploy --no-promote
Accedi alla nuova versione visitando il seguente URL:
https://VERSION_ID-dot-default-dot-PROJECT_ID.REGION_ID.r.appspot.com
Ora puoi testare la nuova versione nell'ambiente di runtime di App Engine. Puoi eseguire il debug dell'applicazione visualizzando i log. Per ulteriori informazioni, consulta Scrittura dei log delle applicazioni.
App Engine instrada le richieste inviate a
https://PROJECT_ID.REGION_ID.r.appspot.com
alla versione precedentemente configurata per ricevere il traffico.Quando vuoi inviare il traffico alla nuova versione, utilizza la console Google Cloud per eseguirne la migrazione:
Seleziona la versione di cui hai appena eseguito il deployment e fai clic su Esegui la migrazione del traffico.
Puoi utilizzare la stessa procedura per testare nuove versioni di altri servizi sostituendo default
nell'URL con il nome del tuo servizio:
https://VERSION-dot-SERVICE-dot-PROJECT_ID.REGION_ID.r.appspot.com
Per maggiori informazioni sul targeting di servizi e versioni specifici, consulta Modalità di routing delle richieste.
Utilizzo delle variabili di ambiente di build
Puoi impostare variabili di ambiente di build per i runtime che supportano buildpacks.
Le variabili di ambiente di build sono coppie chiave/valore che puoi specificare per configurare il buildpack utilizzato per il deployment dell'app. Ad esempio, potresti voler specificare le opzioni di compilazione.
Prima di iniziare:
- Le chiavi devono iniziare con una lettera ASCII maiuscola e possono includere lettere ASCII maiuscole, numeri e trattini bassi.
- Dovresti evitare di creare variabili con un prefisso di chiave
GOOGLE_*
. - Le seguenti chiavi sono riservate all'utilizzo da parte di Google:
GOOGLE_RUNTIME
GOOGLE_RUNTIME_VERSION
GOOGLE_ENTRYPOINT
GOOGLE_DEVMODE
- Puoi utilizzare qualsiasi chiave supportata dai buildpacks.
Per utilizzare le variabili di ambiente con i buildpack, specifica il campo build_env_variables
nel file app.yaml
.
Scopri di più sui buildpack.
Utilizzo di Cloud Trace
Cloud Trace è utile per comprendere in che modo le richieste si propagano nell'applicazione. Puoi esaminare informazioni dettagliate sulla latenza per una singola richiesta o visualizzare la latenza aggregata per l'intera applicazione.
Per visualizzare i dettagli delle tracce in Cloud Trace, puoi seguire Trovare ed esplorare tracce. In Esplora traccia, puoi utilizzare i filtri per filtrare in base al servizio e alla versione di App Engine specifici.