ID regione
Il REGION_ID è un codice abbreviato che Google assegna
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
  febbraio 2020, REGION_ID.r è incluso negli
  URL App Engine. Per le app esistenti create prima di questa data, l'ID regione è facoltativo nell'URL.
Scopri di più sugli ID regione.
Questa guida ti aiuta a iniziare a utilizzare App Engine e a familiarizzare con lo sviluppo, il deployment e la gestione di un'app Go.
Costi
Non sono previsti costi per l'esecuzione di questa guida. L'esecuzione di questa app di esempio da sola non supera la quota gratuita.
Configurazione dell'ambiente di sviluppo
Puoi utilizzare la tua macchina locale e gli strumenti che già conosci oppure Cloud Shell. Cloud Shell ha già installato Google Cloud CLI, l'ambiente già configurato e molte altre funzionalità.
Macchina locale
Installa Go e configura gcloud CLI.
Cloud Shell
Avvia Cloud Shell, che ha tutti gli strumenti necessari preinstallati:
Creazione di un progetto Google Cloud
È necessario un progetto per utilizzare Google Cloude costituisce la base per l'utilizzo di tutti i serviziGoogle Cloud .
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- 
    
    
      In the Google Cloud console, on the project selector page, select or create a Google Cloud project. Roles required to select or create a project - Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
- 
      Create a project: To create a project, you need the Project Creator
      (roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
 
- 
  
    Verify that billing is enabled for your Google Cloud project. 
- 
  
  
    
      Enable the Cloud Build API. Roles required to enable APIs To enable APIs, you need the Service Usage Admin IAM role ( roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
- 
      Install the Google Cloud CLI. 
- 
          Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata. 
- 
        Per inizializzare gcloud CLI, esegui questo comando: gcloud init
- 
    
    
      In the Google Cloud console, on the project selector page, select or create a Google Cloud project. Roles required to select or create a project - Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
- 
      Create a project: To create a project, you need the Project Creator
      (roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
 
- 
  
    Verify that billing is enabled for your Google Cloud project. 
- 
  
  
    
      Enable the Cloud Build API. Roles required to enable APIs To enable APIs, you need the Service Usage Admin IAM role ( roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
- 
      Install the Google Cloud CLI. 
- 
          Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata. 
- 
        Per inizializzare gcloud CLI, esegui questo comando: gcloud init
- Crea l'app App Engine e le relative risorse. Devi
    scegliere una località, che non potrà essere modificata in un secondo momento.
    gcloud app create 
- go-app/: la directory per il servizio Go 1.11.- app.yaml: le impostazioni di configurazione del servizio.
- main.go: il codice dell'applicazione.
 
- Crea una nuova cartella denominata - go-appper il servizio Go 1.11:- mkdir go-app 
- Nella cartella - go-app/, crea un file denominato- app.yamle aggiungi i seguenti contenuti:- Questa è la configurazione più semplice per un'app App Engine. Indica ad App Engine che stai utilizzando il runtime Go 1.11. Il file - app.yamlpuò anche specificare impostazioni di rete, impostazioni di scalabilità e altro ancora. Per ulteriori informazioni, consulta il riferimento- app.yaml.
- Nella cartella - go-app/, crea un file- main.go.
- Aggiungi l'istruzione - package mainper trattare il codice come un programma eseguibile:- package main- Per eseguire il deployment di un servizio nel runtime Go 1.11, è necessario definire un'istruzione - package mainall'inizio di almeno uno dei file di origine Go nella stessa directory del file- app.yamldel servizio.
- Importa i seguenti pacchetti: 
- Definisci il gestore HTTP: - L'oggetto - http.ResponseWriterassembla la risposta del server HTTP; scrivendo al suo interno, invii dati al browser. L'oggetto- http.Requestè una struttura di dati che rappresenta la richiesta HTTP in entrata.
- Registra il gestore HTTP: - La funzione - mainè il punto di ingresso del programma eseguibile, quindi avvia l'applicazione. Inizia con una chiamata alla funzione- http.HandleFunc, che indica al pacchetto- httpdi gestire tutte le richieste alla radice web (- "/") con la funzione- indexHandler.- Se la variabile di ambiente - PORTnon è impostata, la porta- 8080viene utilizzata come valore predefinito. Quando la tua app è in esecuzione su App Engine, la variabile di ambiente- PORTviene impostata automaticamente, ma quando testi l'app localmente, puoi impostare- PORTsu qualsiasi valore preferito.
- Nella directory - go-appin cui si trova il file- app.yaml, esegui il deployment del servizio web in App Engine utilizzando il seguente comando:- gcloud app deploy 
- Per avviare il browser e visualizzare il servizio web all'indirizzo - https://PROJECT_ID.REGION_ID.r.appspot.com, esegui questo comando:- gcloud app browse 
- Visualizza i tuoi servizi App Engine nella console Google Cloud : - Dovresti visualizzare un servizio elencato, denominato - default. Il servizio predefinito è accessibile pubblicamente al seguente URL:- https://PROJECT_ID.REGION_ID.r.appspot.com
- Visualizzare le versioni: - Dovresti visualizzare una versione con timestamp elencata, corrispondente alla tua implementazione. 
- Scopri di più sulla scrittura dei log delle applicazioni e sull'interpretazione dei log di sistema in Lettura e scrittura dei log delle applicazioni.
- Per approfondire il funzionamento di App Engine, consulta l'ambiente di runtime Go.
- Scopri di più su gestione delle richieste e instradamento delle richieste.
Scrittura di un servizio web di base per App Engine
Scopri come scrivere un servizio web e dichiarare le impostazioni di runtime.
Strutturare i file
Il servizio avrà la seguente struttura di file:
Creazione del file app.yaml
Ogni progetto App Engine ha un file di configurazione app.yaml che specifica le impostazioni dell'ambiente di runtime del servizio. Il servizio non verrà
implementato senza questo file.
Creazione del file main.go
Questo esempio utilizza il pacchetto
net/http per creare un server HTTP che stampa "Hello world".
Per configurare il file main.go:
Deployment del servizio web su App Engine
Complimenti! Hai appena creato ed eseguito il deployment di un servizio su App Engine.
Servizi e versioni
Il primo servizio di cui esegui il deployment per la tua applicazione sarà il servizio predefinito.
Puoi specificare il nome del servizio nel file app.yaml, ma se il nome viene omesso, viene considerato come default. Puoi eseguire il deployment di più servizi
diversi da quello predefinito.
Puoi aggiornare il servizio in qualsiasi momento eseguendo il comando gcloud app deploy. Ogni volta che esegui il deployment, viene creata una nuova versione e il traffico
viene indirizzato automaticamente all'ultima versione.
Per confermare la creazione del servizio e il deployment della versione:
Per scoprire come inviare richieste a servizi e versioni specifici, consulta la sezione Modalità di routing delle richieste.
Passaggi successivi
Complimenti! Hai appena configurato ed eseguito il deployment della tua applicazione web in App Engine.
Scopri come aggiungere altre funzionalità alla tua applicazione esplorando le seguenti pagine: