Se connecter à Cloud SQL pour PostgreSQL depuis les fonctions Cloud Run
Découvrez comment déployer un exemple d'application sur les fonctions Cloud Run connecté à une instance PostgreSQL à l'aide de la console Google Cloud et d'une application cliente.
En supposant que vous réalisiez toutes les étapes dans un délai raisonnable, les ressources créées dans ce guide de démarrage rapide coûtent généralement moins d'un dollar (USD).
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.
-
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.
-
Activez les APIs Cloud nécessaires pour exécuter un exemple d'application Cloud SQL sur les fonctions Cloud Run.
Console
Cliquez sur Activer les API pour activer les API requises dans ce guide de démarrage rapide.
Cela aura pour effet d'activer les API suivantes :
- API Cloud Run functions
- API Cloud SQL Admin
- API Cloud Run Admin
- API Cloud Build
- API Artifact Registry
- API Eventarc
- API Compute Engine
- API Service Networking
- API Cloud Logging
gcloud
Cliquez sur le bouton suivant pour ouvrir Cloud Shell, qui fournit un accès en ligne de commande à vos ressources Google Cloud directement depuis le navigateur. Cloud Shell peut être utilisé pour exécuter les commandes
gcloud
présentées dans ce guide de démarrage rapide.Exécutez la commande
gcloud
suivante à l'aide de Cloud Shell :gcloud services enable cloudfunctions.googleapis.com sqladmin.googleapis.com run.googleapis.com cloudbuild.googleapis.com artifactregistry.googleapis.com eventarc.googleapis.com compute.googleapis.com servicenetworking.googleapis.com pubsub.googleapis.com logging.googleapis.com
Cette commande active les API suivantes :
- API Cloud Run functions
- API Cloud SQL Admin
- API Cloud Run
- API Cloud Build
- API Artifact Registry
- API Eventarc
- API Compute Engine
- API Service Networking
- API Cloud Logging
Ajoutez à votre utilisateur le rôle IAM Demandeur de fonctions Cloud Run.
Configurer Cloud SQL
Créer une instance Cloud SQL
Créer une base de données
Console
-
Dans Google Cloud Console, accédez à la page Instances Cloud SQL.
- Sélectionnez
quickstart-instance
. - Dans le menu de navigation SQL, sélectionnez Bases de données.
- Cliquez sur Créer une base de données.
- Dans le champ Nom de la base de données de la boîte de dialogue Nouvelle base de données, saisissez
quickstart-db
. - Cliquez sur Créer.
gcloud
Exécutez la commande gcloud
sql databases create
pour créer une base de données.
gcloud sql databases create quickstart-db --instance=quickstart-instance
Créer un compte utilisateur
Console
-
Dans Google Cloud Console, accédez à la page Instances Cloud SQL.
- Pour ouvrir la page Présentation d'une instance, cliquez sur son nom.
- Dans le menu de navigation SQL, sélectionnez Utilisateurs.
- Cliquez sur Ajouter un compte utilisateur.
- Sur la page Ajouter un compte utilisateur pour l'instance quickstart-instance, ajoutez les informations suivantes :
- Dans le champ Nom d'utilisateur, saisissez
quickstart-user
. - Dans le champ Mot de passe, indiquez un mot de passe pour votre utilisateur de base de données. Notez-le pour l'utiliser dans une étape ultérieure de ce guide de démarrage rapide.
- Dans le champ Nom d'utilisateur, saisissez
- Cliquez sur Ajouter.
gcloud
Avant d'exécuter la commande suivante, effectuez les remplacements suivants :
- DB_PASS par le mot de passe de l'utilisateur de base de données. Notez-le pour l'utiliser dans une étape ultérieure de ce guide de démarrage rapide.
Exécutez la commande gcloud sql users create
pour créer l'utilisateur.
gcloud sql users create quickstart-user \ --instance=quickstart-instance \ --password=DB_PASS
Les limites de longueur des noms d'utilisateur sont identiques pour Cloud SQL et pour PostgreSQL sur site.
Configurer un compte de service de fonctions Cloud Run
Console
-
Dans la console Google Cloud, accédez à la page IAM.
- Pour le compte de service nommé Compte de service Compute Engine par défaut, cliquez sur l'icône en forme de crayon.
- Cliquez sur AJOUTER UN AUTRE RÔLE.
- Ajoutez le rôle nommé Client Cloud SQL.
- Cliquez sur Enregistrer.
gcloud
-
Exécutez la commande
gcloud
suivante pour obtenir la liste des comptes de service de votre projet :gcloud iam service-accounts list
- Copiez l'adresse e-mail associée au compte de service Compute Engine.
- Exécutez la commande suivante pour attribuer le rôle Client Cloud SQL au compte de service Compute Engine :
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \ --role="roles/cloudsql.client"
Créer une fonction
-
Dans la console Google Cloud, accédez à la page Fonctions Cloud Run.
- Cliquez sur Créer une fonction.
- Pour l'option Environment (Environnement), sélectionnez 2nd gen (2e génération).
- Dans le champ Nom de la fonction, saisissez
quickstart-function
. - Dans la section Authentification, cochez Autoriser les appels non authentifiés.
- Cliquez sur Suivant.
- Dans le menu Environnement d'exécution, sélectionnez l'un des langages suivants :
- Dans le menu Code source, vérifiez que l'option Éditeur intégré est sélectionnée. Dans cette étape, vous allez utiliser la fonction fournie par défaut dans l'éditeur.
Langue | Numéro de version |
---|---|
Go | 1.20 |
Java | 17 |
Node.js | 18 |
Python | 3,10 |
Déployer la fonction
- Au bas de la page Fonctios Cloud Run, cliquez sur Déployer. La console Google Cloud vous redirige vers la page des détails de la fonction.
- Une fois le déploiement de la fonction terminé, cliquez sur le lien URL pour afficher un navigateur Web avec le message
Hello, World!
.
Déployer l'exemple d'application Cloud SQL en tant que fonction
Vous allez configurer et déployer l'exemple d'application Cloud SQL en tant que fonction dans les fonctions Cloud Run. Tout d'abord, vous allez utiliser Cloud Shell pour configurer et créer l'exemple d'application. Vous utiliserez ensuite les fonctions Cloud Run pour déployer l'exemple d'application.
Il existe deux manières de configurer, compiler et déployer l'application selon que vous avez créé une instance Cloud SQL pour PostgreSQL avec une adresse IP publique ou une adresse IP privée.
Configurer un exemple d'application Cloud SQL
Déployer l'application exemple
Les étapes permettant de déployer l'exemple sur les fonctions Cloud Run dépendent du type d'adresse IP que vous avez attribué à votre instance Cloud SQL.
Effectuer un nettoyage
Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :
-
Dans Google Cloud Console, accédez à la page Instances Cloud SQL.
- Sélectionnez l'instance
quickstart-instance
pour ouvrir la page Détails de l'instance. - Dans la barre d'icônes en haut de la page, cliquez sur Supprimer.
- Dans la boîte de dialogue Supprimer l'instance, saisissez
quickstart-instance
puis cliquez sur Supprimer pour supprimer l'instance. -
Dans la console Google Cloud, accédez à la page Fonctions Cloud Run.
- Cochez la case à côté du nom du service
quickstart-function
. - Cliquez sur Supprimer en haut de la page Fonctions Cloud Run.
Étapes de nettoyage facultatives
Si vous n'utilisez pas le rôle Client Cloud SQL que vous avez attribué au compte de service Compute Engine, vous pouvez le supprimer.
-
Dans Google Cloud Console, accédez à la page IAM.
- Cliquez sur l'icône de modification (en forme de crayon) pour le compte IAM nommé Compte de service Compute Engine par défaut.
- Supprimez le rôle Client Cloud SQL.
- Cliquez sur Enregistrer.
Si vous n'utilisez pas les API activées dans le cadre de ce démarrage rapide, vous pouvez les désactiver.
- API activées dans ce guide de démarrage rapide :
- API Compute Engine
- API Cloud SQL Admin
- API Cloud Run
- API Container Registry
- API Cloud Build
Dans Google Cloud Console, accédez à la page API.
Sélectionnez l'API que vous souhaitez désactiver, puis cliquez sur le bouton Désactiver l'API.
Étape suivante
En fonction de vos besoins, vous pouvez en apprendre plus sur la création d'instances Cloud SQL.Vous pouvez également découvrir comment créer des utilisateurs et des bases de données PostgreSQL pour votre instance Cloud SQL.
Pour en savoir plus sur la tarification, consultez la page Tarifs de Cloud SQL pour PostgreSQL.
En savoir plus :
- Configurez votre instance Cloud SQL avec une adresse IP publique.
- Configurez votre instance Cloud SQL avec une adresse IP privée.
Vous pouvez également en savoir plus sur la connexion à une instance Cloud SQL à partir d'autres applications Google Cloud :