Crea ed esegui il deployment di una funzione Cloud Functions (1a generazione) utilizzando l'interfaccia a riga di comando di Google Cloud
Questa pagina mostra come creare e sottoporre a deployment una funzione Cloud Functions di 1a generazione utilizzando l'interfaccia a riga di comando di Google Cloud. Per iniziare a utilizzare Cloud Functions (2a generazione), consulta il tutorial introduttivo su Cloud Functions (2a generazione).
Prima di iniziare
- 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.
-
Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.
-
Abilita le API Cloud Functions and Cloud Build.
-
Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.
-
Abilita le API Cloud Functions and Cloud Build.
- Installa e inizializza l'interfaccia a riga di comando gcloud.
- Aggiorna i componenti
gcloud
:gcloud components update
-
Prepara l'ambiente di sviluppo.
Node.js
Python
Go
Java
C#
Ruby
PHP
Hai bisogno di un prompt dei comandi? Puoi utilizzare Google Cloud Shell. Google Cloud Shell è un ambiente a riga di comando che include già l'interfaccia a riga di comando di Google Cloud, quindi non è necessario installarlo. L'interfaccia a riga di comando di Google Cloud è preinstallata anche sulle macchine virtuali di Google Compute Engine.
Recupera il codice campione
Clona il repository di esempio sul tuo computer locale:
Node.js
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
Python
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
Go
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
Java
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
C#
git clone https://github.com/GoogleCloudPlatform/dotnet-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
Ruby
git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
PHP
git clone https://github.com/GoogleCloudPlatform/php-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
Passa alla directory che contiene il codice campione di Cloud Functions:
Node.js
cd nodejs-docs-samples/functions/helloworld/
Python
cd python-docs-samples/functions/helloworld/
Go
cd golang-samples/functions/helloworld/
Java
cd java-docs-samples/functions/helloworld/helloworld/
C#
cd dotnet-docs-samples/functions/helloworld/HelloWorld/
Ruby
cd ruby-docs-samples/functions/helloworld/get/
PHP
cd php-docs-samples/functions/helloworld_get/
Dai un'occhiata al codice di esempio:
Node.js
Python
Go
Java
C#
Ruby
PHP
Esegui il deployment di una funzione
Per il deployment della funzione con un trigger HTTP, esegui il comando seguente nella directory contenente la funzione:
Node.js
gcloud functions deploy helloGET \ --runtime nodejs16 --trigger-http --allow-unauthenticatedPer specificare la versione di Node.js preferita, puoi utilizzare i seguenti valori per il flag
--runtime
:
nodejs16
(consigliato)nodejs14
nodejs12
nodejs10
Python
gcloud functions deploy hello_get \ --runtime python39 --trigger-http --allow-unauthenticatedPuoi utilizzare i seguenti valori per il flag
--runtime
per specificare la tua versione di Python preferita:
python310
(anteprima)python39
(consigliato)python38
python37
Go
gcloud functions deploy HelloGet \ --runtime go116 --trigger-http --allow-unauthenticatedPuoi utilizzare i seguenti valori per il flag
--runtime
per specificare la tua versione Go preferita:
go116
(consigliato)go113
go111
Java
gcloud functions deploy java-helloworld \ --entry-point functions.HelloWorld \ --runtime java11 \ --memory 512MB --trigger-http --allow-unauthenticatedPuoi utilizzare i seguenti valori per il flag
--runtime
per specificare la tua versione di Java preferita:
java17
(anteprima)java11
(consigliato)
C#
gcloud functions deploy csharp-helloworld \ --entry-point HelloWorld.Function \ --runtime dotnet3 --trigger-http --allow-unauthenticated
Ruby
gcloud functions deploy hello_get --runtime ruby30 --trigger-http --allow-unauthenticatedPer specificare la versione di Ruby preferita, puoi utilizzare i seguenti valori per il flag
--runtime
:
ruby30
(consigliato)ruby27
ruby26
PHP
gcloud functions deploy helloGet --runtime php74 --trigger-http --allow-unauthenticatedPuoi utilizzare i seguenti valori per il flag
--runtime
per specificare la tua versione PHP preferita:
php81
(anteprima)php74
(consigliato)
Il flag --allow-unauthenticated
ti consente di raggiungere la funzione
senza autenticazione.
Per richiedere l'autenticazione, ometti il flag.
Testa la funzione
Al termine del deployment della funzione, prendi nota della proprietà
httpsTrigger
'surl
o individuala utilizzando il seguente comando:Node.js
gcloud functions describe helloGET
Python
gcloud functions describe hello_get
Go
gcloud functions describe HelloGet
Java
gcloud functions describe java-helloworld
C#
gcloud functions describe csharp-helloworld
Ruby
gcloud functions describe hello_get
PHP
gcloud functions describe helloGet
Dovrebbe avere questo aspetto:
Node.js
https://GCP_REGION-PROJECT_ID.cloudfunctions.net/helloGET
Python
https://GCP_REGION-PROJECT_ID.cloudfunctions.net/hello_get
Go
https://GCP_REGION-PROJECT_ID.cloudfunctions.net/HelloGet
Java
https://GCP_REGION-PROJECT_ID.cloudfunctions.net/java-helloworld
C#
https://GCP_REGION-PROJECT_ID.cloudfunctions.net/csharp-helloworld
Ruby
https://GCP_REGION-PROJECT_ID.cloudfunctions.net/hello_get
PHP
https://GCP_REGION-PROJECT_ID.cloudfunctions.net/helloGet
Visita questo URL nel tuo browser. Dovresti vedere un messaggio
Hello World!
.
Elimina la funzione
Per eliminare la funzione, esegui il comando seguente:
Node.js
gcloud functions delete helloGET
Python
gcloud functions delete hello_get
Go
gcloud functions delete HelloGet
Java
gcloud functions delete java-helloworld
C#
gcloud functions delete csharp-helloworld
Ruby
gcloud functions delete hello_get
PHP
gcloud functions delete helloGet
Passaggi successivi
- Scopri di più sulla scrittura di funzioni Cloud.
- Scopri di più sul deployment di Cloud Functions.
- Scopri di più sulle chiamate alle funzioni Cloud.
- Scopri di più sul monitoraggio delle funzioni Cloud Functions.
- Scopri di più sull'esecuzione locale di Cloud Functions.
- Esplora i tutorial più avanzati di Cloud Functions.