Il runtime Go 1.11 è lo stack software responsabile dell'installazione del codice e delle sue dipendenze del servizio web e dell'esecuzione del servizio.
Il runtime Go 1.11 per App Engine nell'ambiente standard è
dichiarato nel file app.yaml
:
runtime: go111
Versione Go
L'ambiente di runtime Go 1.11 utilizza l'ultima release stabile di Go 1.11. App Engine si aggiorna automaticamente alle nuove revisioni secondarie, ma non aggiorna automaticamente la versione principale.
Ad esempio, il deployment dell'applicazione potrebbe essere eseguito in Go 1.11.1 e aggiornato automaticamente alla versione 1.11.2 in un deployment successivo, ma non verrà aggiornato automaticamente a Go 1.12.
Dipendenze
Per saperne di più sulla dichiarazione e sulla gestione delle dipendenze, vedi Specifica delle dipendenze.
Variabili di ambiente
Le seguenti variabili di ambiente sono impostate dal runtime:
Variabile di ambiente | Descrizione |
---|---|
GAE_APPLICATION
|
L'ID della tua applicazione App Engine. Questo ID è preceduto dal prefisso "region code~", ad esempio "e~" per le applicazioni distribuite in Europa. |
GAE_DEPLOYMENT_ID |
L'ID del deployment corrente. |
GAE_ENV |
L'ambiente App Engine. Impostato su standard . |
GAE_INSTANCE |
L'ID dell'istanza su cui il servizio è attualmente in esecuzione. |
GAE_MEMORY_MB |
La quantità di memoria disponibile per il processo di richiesta, in MB. |
GAE_RUNTIME |
Il runtime specificato nel file app.yaml . |
GAE_SERVICE |
Il nome del servizio specificato nel file app.yaml . Se non viene specificato alcun nome del servizio, è impostato su default . |
GAE_VERSION |
L'etichetta della versione corrente del servizio. |
GOOGLE_CLOUD_PROJECT |
L'ID progetto Google Cloud associato alla tua applicazione. |
PORT |
La porta che riceve le richieste HTTP. |
Puoi
definire variabili di ambiente aggiuntive nel file app.yaml
,
ma i valori precedenti non possono essere sostituiti.
HTTPS e proxy di forwarding
App Engine termina le connessioni HTTPS al bilanciatore del carico e inoltra le richieste alla tua applicazione. Alcune applicazioni devono determinare
l'IP e il protocollo della richiesta originali. L'indirizzo IP dell'utente è disponibile
nell'intestazione X-Forwarded-For
standard. Le applicazioni che richiedono queste informazioni devono configurare il proprio framework web in modo che il proxy venga considerato attendibile.
Filesystem
Il runtime include una directory /tmp
scrivibile, con tutte le altre directory
che dispongono dell'accesso di sola lettura. La scrittura su /tmp
occupa memoria di sistema. Per ulteriori informazioni, consulta la documentazione su TempDir
e TempFile
.
Server dei metadati
Ogni istanza della tua applicazione può utilizzare il server di metadati App Engine per eseguire query sulle informazioni sull'istanza e sul progetto.
Puoi accedere al server dei metadati tramite i seguenti endpoint:
http://metadata
http://metadata.google.internal
Le richieste inviate al server di metadati devono includere l'intestazione della richiesta Metadata-Flavor: Google
. Questa intestazione indica che la richiesta è stata inviata con l'intento di recuperare i valori dei metadati.
La seguente tabella elenca gli endpoint in cui è possibile effettuare richieste HTTP per metadati specifici:
Endpoint dei metadati | Descrizione |
---|---|
/computeMetadata/v1/project/numeric-project-id |
Il numero di progetto assegnato al progetto. |
/computeMetadata/v1/project/project-id |
L'ID progetto assegnato al progetto. |
/computeMetadata/v1/instance/zone |
La zona in cui viene eseguita l'istanza. |
/computeMetadata/v1/instance/service-accounts/default/aliases |
|
/computeMetadata/v1/instance/service-accounts/default/email |
L'indirizzo email dell'account di servizio predefinito assegnato al progetto. |
/computeMetadata/v1/instance/service-accounts/default/ |
Elenca tutti gli account di servizio predefiniti per il tuo progetto. |
/computeMetadata/v1/instance/service-accounts/default/scopes |
Elenca tutti gli ambiti supportati per gli account di servizio predefiniti. |
/computeMetadata/v1/instance/service-accounts/default/token |
Restituisce il token di autenticazione che può essere utilizzato per autenticare l'applicazione ad altre API Google Cloud. |
Ad esempio, per recuperare l'ID progetto, invia una richiesta a http://metadata.google.internal/computeMetadata/v1/project/project-id
.
Variabili di ambiente
Le seguenti variabili di ambiente sono impostate dal runtime:
Variabile di ambiente | Descrizione |
---|---|
GAE_APPLICATION
|
L'ID della tua applicazione App Engine. Questo ID è preceduto dal prefisso "region code~", ad esempio "e~" per le applicazioni distribuite in Europa. |
GAE_DEPLOYMENT_ID |
L'ID del deployment corrente. |
GAE_ENV |
L'ambiente App Engine. Impostato su standard . |
GAE_INSTANCE |
L'ID dell'istanza su cui il servizio è attualmente in esecuzione. |
GAE_MEMORY_MB |
La quantità di memoria disponibile per il processo di richiesta, in MB. |
GAE_RUNTIME |
Il runtime specificato nel file app.yaml . |
GAE_SERVICE |
Il nome del servizio specificato nel file app.yaml . Se non viene specificato alcun nome del servizio, è impostato su default . |
GAE_VERSION |
L'etichetta della versione corrente del servizio. |
GOOGLE_CLOUD_PROJECT |
L'ID progetto Google Cloud associato alla tua applicazione. |
PORT |
La porta che riceve le richieste HTTP. |
Puoi definire variabili di ambiente aggiuntive nel file app.yaml
, ma i valori precedenti non possono essere sostituiti.