Créez une fonction Cloud Run 1re génération à l'aide de Google Cloud CLI
Cette page explique comment créer et déployer une fonction Cloud Run 1re génération à l'aide de Google Cloud CLI.
Avant de commencer
- 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.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Functions and Cloud Build APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Functions and Cloud Build APIs.
- Installez et initialisez gcloud CLI.
- Mettez à jour les composants
gcloud
:gcloud components update
-
Préparez votre environnement de développement.
Node.js
Python
Go
Java
C#
Ruby
PHP
Vous avez besoin d'une invite de commande ? Vous pouvez utiliser Google Cloud Shell. Google Cloud Shell est un environnement de ligne de commande qui inclut Google Cloud CLI. Vous n'avez donc pas besoin de l'installer. Google Cloud CLI est également préinstallé sur les machines virtuelles Google Compute Engine.
Obtenir l'exemple de code
Clonez l'exemple de dépôt sur votre ordinateur local :
Node.js
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git
Vous pouvez également télécharger l'exemple en tant que fichier ZIP et l'extraire.
Python
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
Vous pouvez également télécharger l'exemple en tant que fichier ZIP et l'extraire.
Go
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
Vous pouvez également télécharger l'exemple en tant que fichier ZIP et l'extraire.
Java
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
Vous pouvez également télécharger l'exemple en tant que fichier ZIP et l'extraire.
C#
git clone https://github.com/GoogleCloudPlatform/dotnet-docs-samples.git
Vous pouvez également télécharger l'exemple en tant que fichier ZIP et l'extraire.
Ruby
git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples.git
Vous pouvez également télécharger l'exemple en tant que fichier ZIP et l'extraire.
PHP
git clone https://github.com/GoogleCloudPlatform/php-docs-samples.git
Vous pouvez également télécharger l'exemple en tant que fichier ZIP et l'extraire.
Accédez au répertoire contenant l'exemple de code de Cloud Run 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/
Consultez l'exemple de code :
Node.js
Python
Go
Java
C#
Ruby
PHP
Déployer une fonction
Pour déployer la fonction avec un déclencheur HTTP, exécutez la commande suivante dans le répertoire contenant votre fonction :
Node.js
gcloud functions deploy helloGET \ --runtime nodejs20 --trigger-http
Utilisez l'option --runtime
pour spécifier l'ID d'exécution d'une version Node.js compatible pour exécuter votre fonction.
Python
gcloud functions deploy hello_get \ --runtime python312 --trigger-http
Utilisez l'option --runtime
pour spécifier l'ID d'exécution d'une version Python compatible pour exécuter votre fonction.
Go
gcloud functions deploy HelloGet \ --runtime go121 --trigger-http
Utilisez l'option --runtime
pour spécifier l'ID d'exécution d'une version Go compatible pour exécuter votre fonction.
Java
gcloud functions deploy java-helloworld \ --entry-point functions.HelloWorld \ --runtime java17 \ --memory 512MB --trigger-http
Utilisez l'option --runtime
pour spécifier l'ID d'exécution d'une version Java compatible pour exécuter votre fonction.
C#
gcloud functions deploy csharp-helloworld \ --entry-point HelloWorld.Function \ --runtime dotnet6 --trigger-http
Utilisez l'option --runtime
pour spécifier l'ID d'exécution d'une version .NET compatible pour exécuter votre fonction.
Ruby
gcloud functions deploy hello_get --runtime ruby32 --trigger-http
Utilisez l'option --runtime
pour spécifier l'ID d'exécution d'une version Ruby compatible pour exécuter votre fonction.
PHP
gcloud functions deploy helloGet --runtime php82 --trigger-http
Utilisez l'option --runtime
pour spécifier l'ID d'exécution d'une version PHP compatible pour exécuter votre fonction.
Vous pouvez éventuellement utiliser l'option --allow-unauthenticated
pour accéder à la fonction sans authentification.
Cela est utile pour les tests, mais nous vous déconseillons d'utiliser ce paramètre en production, sauf si vous créez une API ou un site Web public. En outre, il est possible que ce paramètre ne soit pas adapté aux paramètres de vos règles d'entreprise. Pour savoir comment appeler une fonction nécessitant une authentification, consultez la page Authentification pour l'appel.
Tester la fonction
Une fois le déploiement de la fonction terminé, notez la propriété
url
dehttpsTrigger
ou recherchez-la à l'aide de la commande suivante :Node.js
gcloud functions describe helloGET --format="value(httpsTrigger.url)"
Python
gcloud functions describe hello_get --format="value(httpsTrigger.url)"
Go
gcloud functions describe HelloGet --format="value(httpsTrigger.url)"
Java
gcloud functions describe java-helloworld --format="value(httpsTrigger.url)"
C#
gcloud functions describe csharp-helloworld --format="value(httpsTrigger.url)"
Ruby
gcloud functions describe hello_get --format="value(httpsTrigger.url)"
PHP
gcloud functions describe helloGet --format="value(httpsTrigger.url)"
Elle doit se présenter comme ceci :
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
Accédez à cette URL dans votre navigateur. Le message suivant devrait s'afficher :
Hello World!
.
Supprimer la fonction
Pour supprimer la fonction, exécutez la commande suivante :
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
Étapes suivantes
Consultez le guide Votre première fonction pour l'environnement d'exécution de votre choix afin d'apprendre à configurer votre environnement de développement, créer une fonction en partant de zéro, spécifier des dépendances, déployer votre fonction, tester votre fonction et afficher les journaux. Notez que ces guides ne s'appliquent qu'aux fonctions Cloud Run (1re génération) :