En esta página, se muestra cómo crear e implementar una función de Cloud Functions con la herramienta de línea de comandos de gcloud
.
Antes de comenzar
- Accede a tu Cuenta de Google.
Si todavía no tienes una cuenta, regístrate para obtener una nueva.
-
En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.
-
Comprueba que la facturación esté habilitada en tu proyecto.
- Habilita las API de Cloud Functions and Cloud Build.
- Instala e inicializa el SDK de Cloud.
- Actualiza los componentes de
gcloud
:gcloud components update
- Prepara tu entorno de programación.
¿Necesitas un símbolo del sistema? Puedes usar Google Cloud Shell. Se trata de un entorno de línea de comandos que ya incluye el SDK de Google Cloud, por lo que no es necesario que lo instales. El SDK de Google Cloud también viene preinstalado en las máquinas virtuales de Google Compute Engine.
Obtenga el código de muestra
Clona el repositorio de muestra en tu máquina local:
Node.js
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git
De manera opcional, puedes descargar la muestra como un archivo zip y extraerla.
Python
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
De manera opcional, puedes descargar la muestra como un archivo zip y extraerla.
Go
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
De manera opcional, puedes descargar la muestra como un archivo ZIP y extraerla.
Java
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
De manera opcional, puedes descargar la muestra como un archivo ZIP y extraerla.
C#
git clone https://github.com/GoogleCloudPlatform/dotnet-docs-samples.git
De manera opcional, puedes descargar la muestra como un archivo ZIP y extraerla.
Ruby
git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples.git
De manera opcional, puedes descargar la muestra como un archivo ZIP y extraerla.
Ve al directorio que contiene el código de muestra de Cloud Functions, como sigue:
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/
Ve el código de muestra:
Node.js
Python
Go
Java
C#
Ruby
Implementa una función
Para implementar la función con un activador HTTP, ejecuta el siguiente comando en el directorio que contiene la función:
Node.js
gcloud functions deploy helloGET \ --runtime nodejs10 --trigger-http --allow-unauthenticatedPuedes usar los siguientes valores para que la marca
--runtime
especifique tu versión preferida de Node.js:nodejs10
nodejs12
nodejs14
(vista previa pública)
Python
gcloud functions deploy hello_get \ --runtime python38 --trigger-http --allow-unauthenticatedPuedes usar los siguientes valores para que la marca
--runtime
especifique tu versión preferida de Python:python37
python38
python39
(vista previa pública)
Comienza a usarlo
gcloud functions deploy HelloGet \ --runtime go113 --trigger-http --allow-unauthenticatedPuedes usar los siguientes valores en la marca
--runtime
para especificar tu versión preferida de Go:
go111
(obsoleta)go113
Java
gcloud functions deploy java-helloworld \ --entry-point functions.HelloWorld \ --runtime java11 \ --memory 512MB --trigger-http --allow-unauthenticated
C#
gcloud functions deploy csharp-helloworld \ --entry-point HelloWorld.Function \ --runtime dotnet3 --trigger-http --allow-unauthenticated
Ruby
gcloud functions deploy hello_get --runtime ruby26 --trigger-http --allow-unauthenticatedPuedes usar los siguientes valores para que con la marca
--runtime
se especifique tu versión preferida de Ruby:
ruby26
ruby27
La marca --allow-unauthenticated
te permite acceder a la función sin autenticación.
Para solicitar la autenticación, omite la marca.
Prueba la función
Cuando la función termine de implementarse, toma nota de la propiedad
httpsTrigger
'surl
o búscala con el siguiente 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
Se verá de la siguiente manera:
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
gcloud functions describe hello_get
Visita esta URL en tu navegador. Deberías ver un mensaje de
Hello World!
.
Borra la función
Si deseas borrar la función, ejecuta el siguiente comando:
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
¿Qué sigue?
- Obtén más información sobre cómo escribir funciones de Cloud Functions.
- Obtén más información sobre cómo implementar funciones de Cloud Functions.
- Obtén más información sobre cómo llamar a funciones de Cloud Functions.
- Obtén más información sobre cómo supervisar funciones de Cloud Functions.
- Obtén más información sobre cómo ejecutar funciones de Cloud Functions localmente.
- Consulta los instructivos más avanzados sobre Cloud Functions.