Testa ed esegui il deployment dell'applicazione

ID regione

REGION_ID è un codice abbreviato assegnato da Google in base alla regione selezionata quando crei l'app. Il codice non corrisponde a un paese o a una provincia, anche se alcuni ID regione possono sembrare simili ai codici di paesi e province di uso comune. Per le app create dopo il giorno Febbraio 2020, REGION_ID.r è incluso in 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.

Esegui localmente

Esegui un test dell'applicazione prima del deployment, eseguila nel tuo ambiente locale con gli strumenti di sviluppo che usi abitualmente.

Prima di eseguire il deployment dell'applicazione

Prima di eseguire il deployment dell'applicazione:

Esegui il 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 della tua applicazione da eseguire nell'ambiente standard. Ogni build viene eseguita nella stessa regione del progetto Google Cloud. Per ulteriori informazioni, consulta Gestire le immagini di build.

Per eseguire il deployment delle app in modo programmatico, utilizza API Admin.

Esegui il deployment di un servizio

Puoi eseguire il deployment della tua applicazione in App Engine eseguendo il deployment delle versioni dei servizi dell'applicazione e di ognuno dei relativi file di configurazione.

Per eseguire il deployment di una versione del servizio della tua applicazione, esegui questo comando dalla directory in cui si trova il file app.yaml del tuo servizio:

gcloud app deploy

Se non specifichi file con il comando, viene eseguito il deployment solo del file app.yaml nella directory corrente. Per impostazione predefinita, il comando deploy genera un ID univoco per di cui esegui il deployment, ne esegue il deployment il progetto Google Cloud che hai configurato in Google Cloud CLI per l'utilizzo 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 e eseguire il deployment di ciascun 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 impedire che il traffico venga indirizzato 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 una specifica un progetto Google Cloud, assegnargli un ID versione personalizzato e impedire il traffico verrà reindirizzato alla nuova versione:

gcloud app deploy --project PROJECT_ID --version VERSION_ID --no-promote

Per ulteriori informazioni su questo comando, consulta la gcloud app deploy documentazione di riferimento.

Esegui il deployment di più servizi

Utilizzi lo stesso comando di deployment per eseguire il deployment o l'aggiornamento dei diversi servizi che compongono l'applicazione.

Prima di iniziare:

  • Devi inizialmente eseguire il deployment di una versione dell'applicazione nel servizio default prima di poter creare ed eseguire il deployment di servizi successivi.
  • L'ID di ciascuno dei tuoi servizi deve essere specificato nel relativo di configurazione di app.yaml. Per specificare l'ID servizio, includi il parametro Definizione di elemento service in ogni file di configurazione. Per impostazione predefinita, l'esclusione di questa definizione di elemento dal file di configurazione esegue il deployment della versione nel servizio default.

Per eseguire il deployment di più servizi, esegui separatamente il deployment del app.yaml di ogni servizio . Puoi specificare più file con un unico comando gcloud app deploy:

gcloud app deploy service1/app.yaml service2/app.yaml

Visualizza i log di build

Cloud Build crea ed esegue il deployment dei flussi di log visualizzabili in Cloud Build nella sezione Cronologia build di la console Google Cloud. Per visualizzare le build nella regione dell'app, utilizza il menu Regione per filtrare in base alla regione.

Gestisci le immagini build

Ogni volta che esegui il deployment di una nuova versione:

  1. App Engine crea un'immagine container utilizzando il servizio Cloud Build.

  2. Cloud Build compila l'immagine del container nella regione dell'app ed esegue l'ambiente standard di App Engine.

  3. App Engine archivia le immagini container create in Artifact Registry. Puoi scaricare queste immagini per conservarle o pubblicarle altrove.

Una volta completato il deployment, App Engine non non avranno più bisogno delle immagini container. Le immagini container non vengono eliminate automaticamente. Per evitare di raggiungere la quota di spazio di archiviazione, puoi eliminare in sicurezza le immagini che non ti servono. Tuttavia, se potresti aver bisogno delle immagini in futuro o vuoi conservare e una copia delle immagini, devi esportarne una copia prima dell'eliminazione. Per ulteriori informazioni sulla gestione delle immagini in Artifact Registry, consulta Gestire le immagini.

Ignorare i file

Puoi utilizzare un file .gcloudignore per specificare file e directory che non verranno caricati su App Engine quando esegui il deployment dei servizi. Questo è utile per ignorare gli artefatti di build e altri file che non devono essere caricati con il tuo deployment.

visualizza l'applicazione

Dopo aver eseguito il deployment dell'applicazione in App Engine, puoi eseguire il seguente comando per avviare il browser e visualizzarla all'indirizzo https://PROJECT_ID.REGION_ID.r.appspot.com:

gcloud app browse

Testa su App Engine prima di spostare il traffico

Prima di configurare una nuova versione per ricevere traffico, puoi testarla in App Engine. Ad esempio, per testare una nuova versione del tuo servizio default:

  1. Esegui il deployment della nuova versione, ma impedisci il routing automatico del traffico alla nuova versione:

    gcloud app deploy --no-promote

  2. Per accedere alla nuova versione, vai al seguente URL:

    https://VERSION_ID-dot-default-dot-PROJECT_ID.REGION_ID.r.appspot.com

    Ora puoi testare la nuova versione nel runtime di App Engine completamente gestito di Google Cloud. Puoi eseguire il debug dell'applicazione visualizzando i log. Per maggiori informazioni le informazioni, vedi Scrittura dei log delle applicazioni.

    App Engine instrada le richieste inviate a https://PROJECT_ID.REGION_ID.r.appspot.com alla configurata in precedenza per ricevere traffico.

  3. Quando vuoi inviare traffico alla nuova versione, utilizza il metodo Console Google Cloud per eseguire la migrazione del traffico:

    Gestisci le versioni

    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 le 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 ulteriori informazioni sul targeting di versioni e servizi specifici, consulta Modalità di routing delle richieste.

Utilizza le 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 e configurare il buildpack che usi per il deployment dell'app. Ad esempio, vuoi specificare le opzioni del compilatore.

Prima di iniziare:

  • Le chiavi devono iniziare con una lettera ASCII maiuscola e possono includere lettere ASCII maiuscole, cifre e trattini bassi.
  • Evita di creare variabili con un prefisso della chiave GOOGLE_*.
  • Le seguenti chiavi sono riservate all'uso di Google:
    • GOOGLE_RUNTIME
    • GOOGLE_RUNTIME_VERSION
    • GOOGLE_ENTRYPOINT
    • GOOGLE_DEVMODE
  • Puoi utilizzare qualsiasi chiave supportata da buildpack.

Per utilizzare le variabili di ambiente con i buildpack, specifica build_env_variables nel file app.yaml.

Scopri di più sui buildpack.

Utilizzo di Cloud Trace

Cloud Trace è utile per comprendere il modo in cui le richieste si propagano attraverso un'applicazione. Puoi analizzare informazioni dettagliate sulla latenza per una singola richiesta o visualizzare la latenza aggregata per l'intera applicazione.

Per visualizzare i dettagli della traccia in Cloud Trace, puoi seguire Trovare ed esplorare le tracce. In Trace Explorer, puoi utilizzare i filtri per filtrare in base al servizio e alla versione di App Engine specifici.