ID regione
REGION_ID
è un codice abbreviato che Google assegna
in base alla regione selezionata al momento della creazione dell'app. Il codice non
corrisponde a un paese o a una provincia, anche se alcuni ID regione possono sembrare
simili ai codici 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.
Questa guida ti aiuta a iniziare a utilizzare App Engine e ad acquisire familiarità con lo sviluppo, il deployment e la gestione di un'app Go.
Dopo aver creato l'app, puoi leggere altri tutorial per scoprire come eseguire l'integrazione con altri servizi Google Cloud e aggiungere altre funzionalità alla tua app.
Costi
Non ci sono costi associati all'esecuzione di questa guida. L'esecuzione di questa app di esempio da sola non supera la quota gratuita.
Configurazione dell'ambiente di sviluppo
Puoi usare la tua macchina locale e usare strumenti che già conosci oppure Cloud Shell. In Cloud Shell è già installato Google Cloud CLI, l'ambiente è già configurato e molte altre funzionalità.
Computer locale
Installa Go e configura gcloud CLI come descritto in Configurazione dell'ambiente di sviluppo.
Cloud Shell
Avvia Cloud Shell, in cui sono preinstallati tutti gli strumenti di cui hai bisogno:
Creazione di un progetto Google Cloud
Per utilizzare Google Cloud è necessario un progetto, che costituisce la base per l'utilizzo di tutti i servizi Google Cloud.
- Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Attiva Cloud Build API.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Attiva Cloud Build API.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
- Creare l'app di App Engine e le risorse associate. Devi
scegliere una località, che non può essere modificata in un secondo momento.
gcloud app create
Scrittura di un servizio web di base per App Engine
Scopri come scrivere un servizio web e dichiarare le impostazioni di runtime.
Strutturazione dei file
Il tuo servizio avrà la seguente struttura di file:
go-app/
: directory per il tuo servizio Go.app.yaml
: le impostazioni di configurazione del tuo servizio.main.go
: il codice della tua applicazione.
Creazione del file app.yaml
in corso...
Ogni progetto App Engine ha un file di configurazione app.yaml
che
specifica le impostazioni dell'ambiente di runtime del servizio. Il deployment del servizio non verrà
eseguito senza questo file.
Crea una nuova cartella denominata
go-app
per il tuo servizio Go:mkdir go-app
Nella cartella
go-app/
, crea un file denominatoapp.yaml
e aggiungi il seguente contenuto:runtime: go115 # or another supported version
Questa è la configurazione più semplice per un'app di App Engine. Indica ad App Engine che stai utilizzando Go. Il file
app.yaml
può specificare altre versioni di Go, impostazioni di rete, impostazioni di scalabilità e altro ancora. Per ulteriori informazioni, consulta la documentazione di riferimento diapp.yaml
.
Creazione del file main.go
in corso...
Questo esempio utilizza il pacchetto net/http
per creare un server HTTP che restituisce la stampa "Hello, World!".
Per configurare il file main.go
:
Nella cartella
go-app/
, crea un filemain.go
.Aggiungi l'istruzione
package main
per trattare il codice come un programma eseguibile:package main
Per eseguire correttamente il deployment di un servizio, è necessario definire un'istruzione
package main
all'inizio di almeno uno dei file di origine Go.Importa i seguenti pacchetti:
Definisci il gestore HTTP:
L'oggetto
http.ResponseWriter
assembla la risposta del server HTTP; se vi scrivi, i dati vengono inviati al browser. L'oggettohttp.Request
è una struttura di dati che rappresenta la richiesta HTTP in entrata.Registra il tuo gestore HTTP:
La funzione
main
è il punto di ingresso del programma eseguibile, quindi avvia l'applicazione. Inizia con una chiamata alla funzionehttp.HandleFunc
che indica al pacchettohttp
di gestire tutte le richieste alla root web ("/"
) con la funzioneindexHandler
.Se la variabile di ambiente
PORT
non è impostata, viene utilizzata come predefinita la porta8080
. Quando l'app è in esecuzione in App Engine, la variabile di ambientePORT
è impostata automaticamente, ma quando testi l'app in locale, puoi impostarePORT
su qualsiasi valore preferito.
Deployment del servizio web su App Engine
Nella directory
go-app
in cui si trova il fileapp.yaml
, esegui il deployment del servizio web in App Engine utilizzando questo 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
Complimenti! Hai appena creato un servizio su App Engine e ne hai eseguito il deployment.
Servizi e versioni
Il primo servizio di cui esegui il deployment per la tua applicazione sarà quello 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 alla versione più recente.
Per confermare la creazione del servizio e il deployment della versione:
Visualizza i servizi App Engine nella console Google Cloud:
Dovresti vedere nell'elenco un servizio, chiamato
default
. Il servizio predefinito è accessibile pubblicamente al seguente URL:https://PROJECT_ID.REGION_ID.r.appspot.com
Visualizza le tue versioni:
Dovresti vedere una versione con timestamp elencata, corrispondente al tuo deployment.
Per scoprire come inviare richieste a servizi e versioni specifici, consulta Come vengono instradate le 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:
- Scopri di più sulla scrittura dei log delle applicazioni e sull'interpretazione dei log di sistema, consulta Lettura e scrittura dei log delle applicazioni.
- Per un approfondimento sul funzionamento di App Engine, consulta Go Runtime Environment.
- Scopri di più sulla gestione delle richieste e sul routing delle richieste.